Evolution on the ST
"""""""""""""""""""
This program is in the public domain.
A WARNING to impatient people: For you I put a QUIT-button into the menue!
Evolution comes not in a minute. You have to set the right conditions
and experiment a lot. Results are seen only after 30 minutes or so.
É
After clicking the GO!-button the screen will be filled randomly with
black pixels. Then 10 "bugs", depicted as plus-signs, are set.
The bugs wander restlessly about the screen and, on contact, clear
the black pixels.
Each bug has initially an energy-account of 800 points.
For each pixel it clears the bug will recieve a preset bonus.
For every empty move an energy-decrement is subtracted from the score.
When a preset limit is reached the bug splits into two.
Upon loosing all it's energy the bug is removed from screen and memory.
É
The movements of a bug are regulated by it's genes. There are six genes
for the six possible directions:
Forward no change of direction
Left 60 degrees
Hard Left 120 degrees
Right 300 degrees
Hard Right 240 degrees
Back 180 degrees
Initially all the genes of all bugs are set to four. There is equal
probability for all directions.
So the bugs at first move completely randomly and therefore stay each
within a small area of the screen.
É
On splitting a mutation takes place. The offspring inherits the genes of
it's parent but to the value of one gene -1, 0 or +1 is added.
(Negative values are not allowed, 0 + -1 --> 0)
With different values the probabilities for the directions become different.
In the pixel-environment those bugs will proliferate who move most
efficiently.
When conditions are set appropriately so that the population of bugs
is preserved, you will notice a change in the behaviour of the bugs after
some time.
É
Show me your genes!
During the program you are able to investigate the genetic outfit of
each single bug. Just press the left mouse-button, move the cursor
into the vicinity of the bug to be questioned and release the button.
The genes are represented grafically along with the score-value, the
number of live bugs and the number of deaths and births.
To continue the simulation, click the right mouse-button.
To stop the simulation, press ESC.
É
The EDIT-box
1. Set the number of "food"-pixels to be initially distributed.
New pixels are provided at a constant rate.
2. Set the value for the "food"-bonus for each cleared pixel.
3. Set the limit at which splitting is allowed. (No more than 200 bugs
are allowed simultanously!)
4. Set value for energy-decrement of an empty move.
É
About the history of EVOLUTIO.PRG
A program for MS-DOS ($39.95) was written by Michael Palmiter and reviewed
by Dewdney in Scientific American, May 1989.
According to the review the gene-values are selected randomly.
In my program they are set to the same fixed value!
This program is written with Forth ST by Data Becker (maybe the most
unknown of all programming-packages for the ST.)
É
If you like the program, don't send me money! Send me rather suggestions
on how to improve it.
If you send a diskette I will return the latest version to you.
But why would you send an empty diskette? Put some PD-software on it, but no
PD-virus, please.
Written 23.05.89
Heinrich Pesch
Tiistilänkuja 1 E 50
SF 02230 Espoo
Finland