WARNING! This page is out-of-date. Go here for the latest versions.
The applet is at the bottom of this page, hopefully running as you read this.
The applet is an approximate simulation of DNA replication. Each coloured square is a molecule, the black lines represent a chemical bond between two molecules. Each molecule moves around at random, with the restriction that bonds cannot extend more than a certain distance. Simple chemical rules determine when bonds are formed and when they are broken (reactions). The effect of these reactions is to cause the string of coloured squares to replicate itself repeatedly, as long as there are sufficient free molecules available.
This code grew out of earlier work on mobile cellular automata and through discussion with Daniel LaLiberte and others on the Primordial Life discussion group.
The aim is to create a chemistry that permits robust, adaptable self-replicators. If it can be shown that self-replicators with varying fitness can exist, then in the presence of mutations and under the pressures of natural selection, evolutionary processes should be observed.
Get involved! You can have the source code for this if you want. Some details about how Squirm3 works are below.
30th October 2001
<< back to variant 6 --- on to variant 8 >>
I've tried to provide an interface for working with different chemistries. It works reasonably well I guess but isn't pretty.
Hopefully the interface is reasonably self-explanatory. Reactions like e1 e0 => e4-e10 can be represented using the controls. The ten reactions for self-replicating strings are already set up for you.
Any help with improving this would be welcome. Here is the java source.