Author Topic: Feature Comparison with Avida  (Read 3810 times)

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feature Comparison with Avida
« on: April 16, 2006, 06:38:27 PM »
This is my attempt to create a comparison of core features with Avida, specifically what Avida has that DB does not that I think might be useful.  I'm ignoring non core features (thigns like batch mode, events, etc.) for the moment.  I'd like people to comment on what they thibnk about each one.  I'll periodically update the list as I get further into my research.
  • Two stacks - Avida appears to be able to switch between two different stacks during DNA execution
  • Option to have an orgamism "reset" after reproduction.  In Darwinbots terms this would mean clearing out the parent bot's memory and mutating the DNA, effectively making the mother bot give birth to 2 child bots and immediatly die.
  • Avida implicitly gives a delay between an organism's attempt at reproduction and the success thereof.
That's all I could find that were meaningful.  The two stacks one is the most interesting, though I'm not sure I can come up with a reason why you'd need two stacks.

Offline Greven

  • Bot Destroyer
  • ***
  • Posts: 345
    • View Profile
Feature Comparison with Avida
« Reply #1 on: April 17, 2006, 03:21:40 PM »
(oops a little error sneaked in, edit in red)

Good... It is important to note that Avida organisms can NOT move, eat or do much other compared with Darwinbots.
An Avida bot "strictly" codes for the reproduction gene, some experiments have been made to make the bots compute various things. Num if you want any info or a little discussion about the topic I will be glad to help. I have toyed alot with Avida, íncluding made a close rewrite of it in VB.
« Last Edit: April 17, 2006, 03:22:55 PM by Greven »
10010011000001110111110100111011001101100100000110110111000011101011110010110000
011000011000001100010110010111101001110100110010111100101000001000001111001011101
001101001110011011010011100011110100111000011101100100000100110011010011100110110
010110000011100111101001110110111101011101100110000111101001101001110111111011101
01100100000111010011010001100001110111010000010001001000010100001

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feature Comparison with Avida
« Reply #2 on: April 17, 2006, 03:30:37 PM »
As I see it Avida and Darwinbots are based on different programming war games.

Avida comes from the Core War legacy, whereas Darwinbots comes from a C Robot legacy.

While they aren't strictly comparable, there are some areas that are close enough.  Mutations, for instance.

Offline Greven

  • Bot Destroyer
  • ***
  • Posts: 345
    • View Profile
Feature Comparison with Avida
« Reply #3 on: April 17, 2006, 03:37:20 PM »
I dont know much about either Core War or C Robot's, but I have some ideas what they are. Avida were based on Tierra, which true enough, were based more or less on Core War. Tierra's problem were they there were no form of locality, and distance "organisms" could interact with each other, and Avida made locality possible and more.
« Last Edit: April 17, 2006, 03:38:30 PM by Greven »
10010011000001110111110100111011001101100100000110110111000011101011110010110000
011000011000001100010110010111101001110100110010111100101000001000001111001011101
001101001110011011010011100011110100111000011101100100000100110011010011100110110
010110000011100111101001110110111101011101100110000111101001101001110111111011101
01100100000111010011010001100001110111010000010001001000010100001

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Feature Comparison with Avida
« Reply #4 on: April 17, 2006, 07:35:06 PM »
The even bigger change in my opinion from Tierra to Avida was that each organism got their own memory address space and thus took the first steps towards phenotypic abstraction.  In Tierra, like Core Wars, all the organims inhabited the same address space and genotypes interacted directly without any intermediate abstractions such as a body.  There as no morphology.  The genotype and the phneotype were pretty much the same.   Avida took steps towards a phenotype abstraction by seperating the address spaces and providing true virtyual machines for each entity and any interaction was via abstractions though the focus is mostly about externally defined fitness tests (makes for more quantiative measurments of fitness and hence cleaner papers) and not evolving abitrary fitness by having morphs compete in a simulated environment for limited resources.  

DB is even father ahead on separating genotype and phentotype though a lot of things things like viruses and memory shots and refsysvars still operate directly upon the geneotype.
« Last Edit: April 17, 2006, 07:36:52 PM by EricL »
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feature Comparison with Avida
« Reply #5 on: April 17, 2006, 07:40:09 PM »
I was thinking about genotype vs. phenotypes in Darwinbots and came to this conclusion:

except for dynamic sizes (which is fairly recent) all bots are pretty much the same physically.  There might be some differences in venom, poison, etc. but generally a bots' phenotype is defined entirely by its behavior.

Just an interesting observation.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Feature Comparison with Avida
« Reply #6 on: April 17, 2006, 07:47:39 PM »
I disagree in part.  Think about mass and waste and ties and shots and shell and slime.  All phenotypic abstractions.  A tie bot and a shot bot  are each very different not just in behaviour but in morphology.  The fact that we don't have fancy graphics to make each one of these visually distinctive is beside the point.  Each of these is an abstraction above and beyond the DNA.  We could decide bots should just poke values at each others memory locations, but wheres the fun in that?  I think we have a lot more morphology than you think.  It will only get better once multi-bots become the norm.
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feature Comparison with Avida
« Reply #7 on: April 17, 2006, 07:55:01 PM »
Hm, I see your point.  Maybe I should say behavior is more of a part of the phenotype of a bot than it is with real organisms.  You have a hard time discerning Animal Minimalis from Ymir unless you watch them (or chaeat and look at the DNA).

Offline Greven

  • Bot Destroyer
  • ***
  • Posts: 345
    • View Profile
Feature Comparison with Avida
« Reply #8 on: April 18, 2006, 03:28:11 AM »
Quote from: EricL
The even bigger change in my opinion from Tierra to Avida was that each organism got their own memory address space and thus took the first steps towards phenotypic abstraction.  In Tierra, like Core Wars, all the organims inhabited the same address space and genotypes interacted directly without any intermediate abstractions such as a body.  There as no morphology.  The genotype and the phneotype were pretty much the same.   Avida took steps towards a phenotype abstraction by seperating the address spaces and providing true virtyual machines for each entity and any interaction was via abstractions though the focus is mostly about externally defined fitness tests (makes for more quantiative measurments of fitness and hence cleaner papers) and not evolving abitrary fitness by having morphs compete in a simulated environment for limited resources.  

DB is even father ahead on separating genotype and phentotype though a lot of things things like viruses and memory shots and refsysvars still operate directly upon the geneotype.

That is actully what I meant by locality, just with a bit more words
10010011000001110111110100111011001101100100000110110111000011101011110010110000
011000011000001100010110010111101001110100110010111100101000001000001111001011101
001101001110011011010011100011110100111000011101100100000100110011010011100110110
010110000011100111101001110110111101011101100110000111101001101001110111111011101
01100100000111010011010001100001110111010000010001001000010100001