A few years ago when using either Lycos or the WWWW (remember those?) to search for CoreLife I came across a program with the same name. The program I discovered is an artificial life simulator written by Erik de Neve.
CoreLife supports two VCPUs:
- The CoreLife VCPU - supports 32 instructions that resemble 8086 assembly
- The Tierra VCPU - supports the 32 instructions of Thomas Ray's software
After seeding memory with a handwritten organism the simulation begins. Each organism attempts to replicate while the simulator randomly mutates instructions or causes them to fail. Thanks to the mutation the copied organism often differs slightly from the parent.
In some cases the mutation renders the child organism less effective or too damaged to replicate. In other cases the child is smaller and faster, able to out-replicate the less efficient parent.
Watching the code evolve made me wonder if I could beat evolution. I set myself a challenge: could I create the ultimate organism to out-replicate everything else and resist mutation?
Unfortunately any attempt to resist mutation quickly died out so I settled for creating the smallest self-contained replicator, just 22 instructions:
;22 Instruction Replicator ;for the Tierra Virtual CPU nop_1 adrb nop_0 push ax sub_ac divide mov_ab adrf nop_1 sub_ab inc cx mal nop_1 dec cx mov_ii ifz ret inc bx inc ax jmpb nop_0 pop dx
- CoreLife is available on Erik de Neve's webpage and runs perfectly using DOSBox.
Makes me remember what I read of Tom Ray's concerns about replication 'in the wild'
ReplyDelete