Evolve 5.0 Blog
VOLVE    5.0

Newer Posts Older Posts

ALIFE: Current genetic program

July 30th 2006

Here's a DNA example from today's sim:

main:
{
      9  call  1  call  9  call  2  call  call  71
}

row1:
{
      HAS-NEIGHBOR  118  OMOVE  EAT  OMOVE  EAT  EAT  OMOVE  3
      GROW  OMOVE  EAT  EAT  EAT  EAT  OMOVE  OMOVE  OMOVE  EAT
      OMOVE  EAT  OMOVE  EAT
}

row2:
{
      -72  -21  -52  OMOVE  EAT  and  OMOVE  EAT  MOOD  OMOVE
      ?loop  EAT  EAT  EAT
}

row3:
{

}

row4:
{

}

row5:
{

}

row6:
{

}

row7:
{
      74  46  10  R0  -3  2dup  -36  0=  R5  LOOK-SPORE  OMOVE
      *  10  2pop  2dup  R4!  R8!  EAT  -11  42  unpack2  -26
      72  12  xor  -58  <>  negate  97  64
}

row8:
{
      GROW  64  R4!
}

row9:
{
      ENERGY  6  /  R0!  -8  R9  R0  MAKE-SPORE  -2  0  R0  MAKE-SPORE
      OMOVE  2  R3  GROW  GROW  /
}

row10:
{
      2over  -64  -5
}

row11:
{

}

row12:
{
      HAS-NEIGHBOR  R1  EAT  OMOVE  6  *  R2  R0!  EAT  EAT  EAT
      tuck  MOOD!  OMOVE  EAT  over  EAT
}

row13:
{

}

row14:
{
      -81
}

row15:
{
      LOOK-SPORE
}

row16:
{
      nip  47  -60  -94
}

row17:
{
      negate  -99  R8  R8  R8!  62  min
}

row18:
{

}

row19:
{
      ENERGY  if  -65  13  /  -35  HAS-NEIGHBOR  LOOK  OMOVE
      EAT  82  <=  dup  -57  2*  MOOD  dup  -57  2*  LOOK-CELL
      56  63
}

row20:
{

}

row21:
{
      R4!  tuck  <>  AGE
}

row22:
{

}

row23:
{
      -43
}

row24:
{
      /  R1  /  R1  83
}

row25:
{

}

row26:
{
      -4
}

row27:
{
      -33  /mod
}




ALIFE: Sim update

July 29th 2006

Not much new. The sim is running quite nicely. By this I mean, the population stays in a healthy range, and I continue to see new variations. I added some messages to the Evolve 4.0 forum, in which I described some new features I am working on. The main feature that seems cool to me is the "Radioactive Dye Marker". Basically is lets you tag one or more creatures and follow them around (and their offspring). But check out the forum for a full list of things I am thinking of implementing. No time frame, maybe in 1 month time. I realized that my linux box is a 6 year old machine. For $600 I can pick up a used PC which runs at about three times the speed of this box. So probably in the very near future I will be upgrading the linux box to run this sim. This will mean that the "one year of alife" sim will be able to simulate in one year what would have taken the existing PC three years to compute. (I'm looking at used-pcs.com, and wanting to get a Pentium 4 hyperthread CPU running at 3Ghz; my existing box, it turns out, is only 1.0Ghz) Right now the sim is at 73 million steps. The average generation is about 730,000. Meaning each creature has about 730,000 ancenstors. The number of creatures born is 3.3 billion.




ALIFE: sim update

July 18th 2006

The 1 year of alife sim continues. The nice thing about the "no cost" stack that was introduced, is it looks like it makes the simulations less prone to "dying out". The no cost stack, gives each cell 10 free stack elements. This gives each cell a bit of breathing room, and makes the Evolve4.0 universe less hostile. It also means the overall population is higher for the same amount of starting energy. Instead of using 200,000 units of energy (for a pop. of 3,000 creatures), I am finding that 80,000 units of energy is sufficient. Anyway, the sim is running fine, and seems to be stable at a comfortable population of around 3,000. Most creatures are multi-cellular. Around 5 to 10 cells. And each creatures likes to move around in a spiral fashion. What is really wierd it the genetic program is NOT an infinite loop! Somehow the original infinite loop logic has been relpaced with a recursive call to "main". This has the same effect as an infinite loop, except it ultimately requires more and more energy (and thus death). So these creatures have a limited lifespan. I attribute this change to the introduction of the no cost stack. The no cost stack allows these creatures to recursively call their "main" program without immediately dying. They can reproduce a couple times before they become energy hogs and die. This recursive call may be a weierd way to store energy as stack elements (like fat) and when a cell tries to allocate more stack elements than the organism has sufficient energy for, then that cell dies. When the cell dies, its stack elements are converted back into energy. Anyway, this may be more a survival advantage than I at first realized. I am anxiously waiting for that cool mutation that gives these creatures vision. A stategic LOOK instruction that will endow a creature with a slight advantage over his neighbors. What does it mean that after billions of births/deaths creatures still aren't LOOK'ing around? This is exactly why I am running this sim for one year. I shall be bummed if after one year this sim exhibits no more complexity than I am seeing now. But even this negative result will give interesting food for thought. But I believe a long-term simulation with a decent population of replicators is something that is needed to fully explore the possibilities of ALIFE.




ALIFE: Evolve 4.6 released

July 8th 2006

I released version 4.6 of Evolve. This version is different enough from previous versions that (1) Upgrade of old sim files is not feasable. (2) One Year of ALife was restarted using this new version. The changes mentioned in the last blog entry were made. One thing that I changed (which was not mentioned) is adding a "no cost stack" feature. Every cell gets 10 free stack elements to play around with, which do no cost energy. After the 10th element each stack entry costs 1 unit of energy. This change has really made my sim behave the way I always envisioned it to work. What this does is put all algorithms on an even footing with each other (atleast for all algorithms that use only 10 stack elements or less). Before, a program that used only 3 stack elements was better than a program that used 4 stack elements. 'better' meaning used less energy. Which translated into a large survival advantage. Anyway, the new approach still has limits on stack growth, but these limits only kick in when more than 10 stack elements are required.




Newer Posts Older Posts