Code center > Darwinbots3
Just a quick insight i'd love.
spike43884:
--- Quote from: Numsgil on May 28, 2015, 01:33:47 PM ---
--- Quote from: spike43884 on May 28, 2015, 05:02:33 AM ---Then when ions are formed, energy is used up and when ions are neutralised energy is released, that i'd imagine would be as in depth as it'd be needed. The attraction of ions would be fun to play with.
--- End quote ---
Chemistry/organic chemistry is a little more complicated than that unfortunately. Many reactions do involve ions (for instance NADP+), but that's actually NADPH being broken down to release energy. That is, a neutral molecule being broken down (I think that's considered a reducing reaction if I remember my Chemistry, which is doubtful :) ) to ions to release energy. Chemistry is rather a series of mutations of molecules from one form to another, with the difference in bond energy determining how much energy is required or released. As far as I know the amount of bond energy a molecule has is not immediately predictable just from the atoms in it (I think it's some complicated function of the various electron shells and you end up getting neck deep in quantum mechanics before long).
Now that said, a simplified chemistry model isn't impossible, but from a computational standpoint I'd want the role of particles that give off a charge to be minimal. As long as the particles in the sim are passive and only react to the fluid (or electromagnetic forces or whatever), they're O(n) to simulate. That is, double the number of particles and you double the computation time. If they also exert push or have mass or generally do anything to influence the simulation at all it starts to move towards O(n^2). There are ways around that using techniques like multipole methods, but they're really complicated :)
From a gameplay perspective, though, I think you can get a lot of the effects without doing much of the work. At its core a cell is a capacitor, and uses the voltage difference of the inside and outside of a cell to drive at least some of its reactions. We could do something like limit how fast things (fats, proteins, etc.) can by synthesized by how large the voltage difference is, which is a function of total charge and bot surface area. Building up charge could take time. Expending charge is less limited, but once its gone its gone, and has to be recharged.
--- End quote ---
Charge we would probably want to remember to make sure as having both negative and positive. we could say inside the cell an 'overrall' charge...A simplified model is of course what we'd have to achieve though.
SLIGHTLY OFFTOPIC: On the original science forums, I saw an interesting topic, someone was questioning why sexual reproduction ONLY have male and female...and it made me think we could actually remove .sexrepro in DB3. because I came up with a system that could generate gametes (with a slight risk of mutation) as far as DB2 goes. Asexually make cells with only half the DNA, the first half or last half...roughly. Then make sure a specific memory location stores which type of gamete it is. Once that is decided when they collide, they inspect that memory location. presuming their compatible, the lets call it 'type one gamete' ties to the 'type two gamete' then pumps most of its energy into the other one, and releases some viruses into its partner that gives its partner all its genes. Boom, complete gene-set made.
Numsgil:
--- Quote from: spike43884 on May 29, 2015, 05:31:12 AM ---SLIGHTLY OFFTOPIC: On the original science forums, I saw an interesting topic, someone was questioning why sexual reproduction ONLY have male and female...
--- End quote ---
I think some bacteria and yeasts could be described as having more than 2 genders, though only in a very technical sense. You still only combine two of them at a time to get a new critter. It's just that there are some different markers they use to prevent mating with close relatives. It'd be like instead of male/female people only mated with others with compatible blood types.
--- Quote ---and it made me think we could actually remove .sexrepro in DB3. because I came up with a system that could generate gametes (with a slight risk of mutation) as far as DB2 goes. Asexually make cells with only half the DNA, the first half or last half...roughly. Then make sure a specific memory location stores which type of gamete it is. Once that is decided when they collide, they inspect that memory location. presuming their compatible, the lets call it 'type one gamete' ties to the 'type two gamete' then pumps most of its energy into the other one, and releases some viruses into its partner that gives its partner all its genes. Boom, complete gene-set made.
--- End quote ---
My plan is, since DNA is sorted in to chromosomes anyway (basically logically distinct address spaces, the results of which get merged to run the cell), bots can merge together and pool their resources (and DNA!). When they go to divide, they can meiosis themselves to split the DNA instead of copying it. That is, if there are two chromosomes A and a, A gets sent to one bot and a gets sent to another bot. I use longest common subsequence type algorithms to match up chromosomes based on what their DNA looks like. When A and a are parting company, they perform a few crossover events, basically the tail of A and the tail of a, at roughly equivalent places where the two match, switch from one chromosome to the next. You do that a few times and you'be basically shuffled the two chromosomes together.
This goal is to mimic the haploid/diploid generations of yeast, which are far less arbitrary than the strict roles they have in higher organisms.
spike43884:
--- Quote from: Numsgil on May 29, 2015, 01:27:09 PM ---
--- Quote from: spike43884 on May 29, 2015, 05:31:12 AM ---SLIGHTLY OFFTOPIC: On the original science forums, I saw an interesting topic, someone was questioning why sexual reproduction ONLY have male and female...
--- End quote ---
I think some bacteria and yeasts could be described as having more than 2 genders, though only in a very technical sense. You still only combine two of them at a time to get a new critter. It's just that there are some different markers they use to prevent mating with close relatives. It'd be like instead of male/female people only mated with others with compatible blood types.
--- Quote ---and it made me think we could actually remove .sexrepro in DB3. because I came up with a system that could generate gametes (with a slight risk of mutation) as far as DB2 goes. Asexually make cells with only half the DNA, the first half or last half...roughly. Then make sure a specific memory location stores which type of gamete it is. Once that is decided when they collide, they inspect that memory location. presuming their compatible, the lets call it 'type one gamete' ties to the 'type two gamete' then pumps most of its energy into the other one, and releases some viruses into its partner that gives its partner all its genes. Boom, complete gene-set made.
--- End quote ---
My plan is, since DNA is sorted in to chromosomes anyway (basically logically distinct address spaces, the results of which get merged to run the cell), bots can merge together and pool their resources (and DNA!). When they go to divide, they can meiosis themselves to split the DNA instead of copying it. That is, if there are two chromosomes A and a, A gets sent to one bot and a gets sent to another bot. I use longest common subsequence type algorithms to match up chromosomes based on what their DNA looks like. When A and a are parting company, they perform a few crossover events, basically the tail of A and the tail of a, at roughly equivalent places where the two match, switch from one chromosome to the next. You do that a few times and you'be basically shuffled the two chromosomes together.
This goal is to mimic the haploid/diploid generations of yeast, which are far less arbitrary than the strict roles they have in higher organisms.
--- End quote ---
Yeah....It'd be nice actually, to see in the DNA viewer the chromosones aligned...so 2 columns, A in one column, then in the same area in the other column a. That and the capability to 'scroll back' through the life of the single organisms DNA, so you can see how its mutated.
Navigation
[0] Message Index
[*] Previous page
Go to full version