Welcome To Darwinbots > Newbie
Delurk
EricL Newbie:
Hey there.
Okay, first things first. DB rocks! I have wanted to do something similar for years since I saw Karl Sim's Connections Machines demos in the 90s! I've played with Avida and Tierra and even written a few thousands lines of mutation and selection code for Microsoft's .NET Terrarium, but those are either too acedemically focused or not focused on ALife. I must say that DB is smack on what I've been looking for. Well done guys.
Okay, second, is there a active Internet FTP bot location for sharing bots? I have 2.37.6 up and running and would like to just watch different bots from different authors while I learn the language but neither the FTP site in the code nor the IP address in the Internet forum seems to be live.
Again, well done. I look forward to authoring my own bots and playing around with 2.4. Yes, at some point I can help with the code too.
Regards,
Eric
Numsgil:
These days bots are generally shared through the beastiary, which is a sub forum here in the forum.
In the (relatively near hopefully (like before summer)) future, it should be possible to share bots directly from within the program. (I was inspired by the hour demo by Will Wright about Spore).
EricL Newbie:
Thanks, saw the forum. I'll cut and paste.
On a completely different topic, is there an ETA for allowing the encoding of the mutation rate to be part of the genome and for allowing selection to operate independently on the mutation rate for different parts of the genome? Excuse the verbosity so that I may be as clear as possible. If memory serves, in biological DNA, there are different ways to code for the sme amino acid I.e. different 3 letter sequence encodings can code for the same amino acid, ultimatly producing the same phenotype - they have no impact on expression or behaviour - yet the different encodings have different probabilites (by orders of magnitude) of introducing errors during copying. Such a mechansim allows for selection to operate on the diversity of encodings I.e. on the mutation rates of different parts of the genome such that where it is favorable for organims to have hot spots of mutation in their genome (such as the chemical make up of the posion secreted by cone snails, which can vary from one generation to the next) evolution has selected for those sections of the genome being encoded in ways where the mutation rate is higher. Where stasis is favorable, those portions of the genome are selected to be encoded for a lower probability of copy-induced mutation.
From what I've read, the realization of the role this mechanism plays in "self selection" of mutation rates is relatively recent, yet I think it is critical for providing a means for adaptations to occur more quickly when needed and stability to persist where stability is needed. That is, that the mutation rate can itself be operated upon by selection and that different parts of the genome at different granulatiries can have their own independent mutation rates that get selected for independently is IMHO a not well known yet very important mechanim. I'd love to see it in DB.
I've seen a few posts related to this idea in my cursory browsing, but can't find them at the moment. One can imagine a mechanim where say, each sysvar had multiple underlying numbers which mapped to the same program behaviour. Different numbers wouldn't impact the bot behaviour, but would impact the probability of a mutation at the location in the genome. A similar mechanim could operate at the gene level, impacting the probability of gene copying, deletion, etc. This would be in addition to the "external" cosmic ray mutations currently in the system. If done right, I think this would allow bots to converge on their own favorable mutation rates for different parts of their genome.
Eric
Numsgil:
Interesting. ;)
An issue you run into when you try to implement something like that is bot DNA (and real DNA I would suspect) tends to be a whole lot more convulted than we like to think. Bot DNA can get totally scrambled, diced, spliced, fried, and mangled. Meaning that any area based effects you try to have on a particular "section" of DNA would quickly fall apart.
Which leaves the effects on single atomic commands, which I can imagine working.
Perhaps each command/sysvar has a mutation multipler attached with it that can itself be modified by mutations. I imagine these mutations would probably need to effect "areas" and "sections" of DNA instead of individual atomic units, but that does solve the problem of the DNA "remembering" what section it was in...
EricL Newbie:
Yup, I hear ya. Eventually, I'd love to see both atomic instruction level and module 'area' level mutation encoded inside the genome but I fully understand how the latter is more involved. Perhaps it may fall out of future work on sexual reporduction as that may necessitate a stronger notion of module or gene cluster for the purposes of meaningfull recombination.
Give me a week or two. I'll re-read Lynn Caporale's 'Darwin in the Genome', take a look at the C++ code, then offer up a concrete proposal and perhaps some code.
-E
Navigation
[0] Message Index
[#] Next page
Go to full version