
Newer Posts |
ALIFE: The sweet spot is to be on the edge of chaos
May 13th 2006My simulations, the ones I keep running "for one whole year" keep dying out after a couple of days!!! Hee heee hee. Oh well, gotta give earth credit. Life is a bitch! Anyway, I did see some cool creatures during this process. Creatures that swarmed and used LOOK instructions to determine where to go. I am very optimistic about this. Anyway, I am going to keep testing out new sims until I get one that lasts. On a very relevant note: Christopher Langton (founder of ALife), describes a "Lambda" value which is a measure of a Cellular automata's complexity. There's a sweet spot in his classification scheme. It is called being on the "edge of chaos". I think my simulations keep dying out because they are either too chaotic or too wimpy and die out. Whatever... I will attempt more research on this idea. Maybe I'll find a way to tweak my simulator to enter (and stay in) the sweet spot. However, I did learn that a lot of other ALIFE programs suffer from similar issues. I'll just have to deal with it. Please be patient. I am confident that a year long simulatio is possible. See: [url=http://math.hws.edu/xJava/CA/EdgeOfChaos.html]EdgeOfChaos.html[/url]
'If you build it, they will come' is NOT an ALIFE motto
May 11th 2006In Artificial Life programming, one first creates an Artificial Universe. This is a virtual place in which replicating entities will live and replicate. But one thing I have learned is that it is hard to predict how these replicators will use the universe you created for them. The phrase, "If you build it, they will come." was used in Field of Dreams to describe some dude building a ball park. And dead baseball players would come to play. This motto most definately [b]does not[/b] apply to ALife, because, my Evolve 4.0 software includes things [b]I hope[/b] will be exploited by the evolving creatures, but I am not seeing them flock to these features. One feature is sexual reproduction. Who wouldn't flock at the chance to have sex? But my creatures seem happy with asexual reproduction. The problem I see is that what seems like a good idea to me, could be totally off base. My mechanism for sexual reproduction has to have a survival advantage. The other thing I built into Evolve was a variety of LOOK instructions. This allows a creature to look at its environment. Hopefully this will enable it to find food better, or avoid being eaten. So far these instructions have not been used. I built these things, but ALife didn't come. I think a good motto for ALife is: [i]"If you build it, they [b]may[/b] come. Or they [b]may not[/b] come. If they do come it will be for totally weird and bizarre reasons that you never anticipated."[/i]
Alife: New sim looks good
May 11th 2006Its only been one day, but the new sim looks better. I think I will be able to run this for a year. I made the universe bigger(700 x 600 units). I also didn't shove in any barriers. The universe is just one big open area. (the entire grid is surrounded by an oval shape). The amount of energy was also increased to 200,000 units. So far the number of organisms is about 1,000 - 2,000. Right where I like to see it.
ALife update: first sim dies out
May 10th 2006Well the simulation "died out". I launched a contingency simulaton. This one is (1) 700 x 600 and (2) 200,000 units of energy and (3) Simple enclosure. The previous simulation was 400x500 had 150,000 units of energy in the system and (4) had a bunch of ugly barriers. Hopefully this one will be last longer (1 year!!!!)
ALife progress: day 6
May 9th 2006The population has crashed to around 500 - 600. This usually means the simulation is about to "die out". This condition happens on many simulations I have performed. Right now it looks good. Ideally I want the population to be around 1,000 - 2,000. Right now creatures are moving around and reproducing, so its not the end yet. If it "dies out", I will start over with a new simulation.
Alife day four
May 7th 2006This is my first [b]real[/b] entry to my ALife blog. These will be quick entries to summarize the simulation so far. So, the universe has simulated about 50 million steps. And there have been about 1 billion creature born. The current snapshot contains about 1,500 organisms.' Here is the genetic program from one of the creatures:
main: { 6 call 9 if 3 call 87 ?loop } row1: { AGE 46 -80 LOOK } row2: { <= GROW } row3: { R0 -31 OMOVE EAT ?exit ?loop } row4: { } row5: { >= } row6: { -210 59 OMOVE EAT ?loop LOOK2 ?loop } row7: { } row8: { } row9: { R5 ENERGY 4 / R0! -65 R1 R0 MAKE-SPORE 2- R7 2 MAKE-SPORE GROW OMOVE } row10: { AGE } row11: { -76 } row12: { }This creature was generation [b]254,987[/b] meaning you must go back one quarter million generations to get to the first organism in this simulation. It also means that the mutation algorithm has been applied to the initial program about 250,000 times. Oh, by the way... Here is the intial genetic program:
; ; a good seed organism ; ; BEHAVIOR: ; This creature forever moves in various directions until ; its forward movement is blocked. As it moves it eats. ; Before moving in a new direction it will try to reproduce. ; main: { reproduce call reproduce call ; ; go SOUTH-EAST until blocked (eat along the way) ; { 1 1 omove eat pop ?loop } call reproduce call ; ; go WEST until blocked (eat along the way) ; { -1 0 omove eat pop ?loop } call reproduce call ; ; go SOUTH-WEST until blocked (eat along the way) ; { -1 1 omove eat pop ?loop } call reproduce call ; ; go EAST until blocked (eat along the way) ; { 1 0 omove eat pop ?loop } call reproduce call ; ; go NORTH-EAST until blocked (eat along the way) ; { 1 -1 omove eat pop ?loop } call reproduce call ; ; go SOUTH until blocked (eat along the way) ; { 0 1 omove eat pop ?loop } call reproduce call ; ; go NORTH until blocked (eat along the way) ; { 0 -1 omove eat pop ?loop } call reproduce call ; ; go NORTH-WEST until blocked (eat along the way) ; { -1 -1 omove eat pop ?loop } call reproduce call ; ; do it all over again ; 1 ?loop } reproduce: { ; ; compute 1/4 of our energy, and store in R0 ; energy 4 / R0! ; ; Make 1st spore to the square on our left. ; -1 0 R0 make-spore pop ; ; Put 2nd spore at the same spot (fertilizing it) ; -1 0 R0 make-spore pop ; ; get the hell out of the way so we don't eat our own ; babies, or they don't eat us. ; 1 1 omove pop 0 -1 omove pop 0 -1 omove pop 0 -1 omove pop 0 -1 omove pop 0 -1 omove pop }One thing I am most happy about in the evolved genetic program is the usage of [b]LOOK[/b] and [b]LOOK2[/b]. I haven't fully analysed the code yet, but it appears this instruction is being called and affects the behavior of the creature. This is something I have been hoping for. If all goes well this kind of awareness will continue as "smarter" creatures evolve.
Announcing Evolve 4.0 my new ALife software
May 6th 2006I will be running an ALife simulation for one year. The software is available here: [url=http://www.stauffercom.com/evolve4]Evolve 4.0[/url] Both source and executable are available. The website includes lots of pretty screen dumps and so on.
Artificial Life: Introduction
May 6th 2006ALife or Artificial Life mostly refers to software that simulates life. It creates software entities that (1) Can Replicate, (2) Can Evolve. I have been writting my own application for ALife since 1996. It is called 'Evolve' and the current version run using Eiffel. In a couple days I will be releasing Evolve 4.0 which is much better. Also I will be launching my project "One Year of ALife". This project will employ a spare computer (running Linux) to continiously simulate a universe of evolving creatures. Every day I will upload the latest simulation results. This blog (under the category ALife) will be used to keep a commentary on the results. Here is the project website: [url=http://www.stauffercom.com/alife]One Year of ALife[/url] It includes the current simulation file(s).
Newer Posts |