Date post: | 17-Dec-2015 |
Category: |
Documents |
Upload: | matthew-dalton |
View: | 213 times |
Download: | 0 times |
Contents
• Introduction
• Tierra system description
• Mac-tierra
• Results
• Discussion
Introduction
• Exploration of life in general is limited
• Tierra is an artificial life model to explore the origin of diversity
What Is Life?
• “I would consider a system to be living if it is– Self-replicating and– Capable of open-ended evolution
• Synthetic life should self replicate, and evolve structures or processes that were not designed in or preconceived by the creator.”
The Tierra Simulator
• Virtual parallel computer
• Cellularity: each program gets its own memory and CPU time. Each cell can read and execute every instruction but has write permission to its own or its daughter cell
• The operating system executes the code of each cell in the computer’s memory
main memory
instruction codes
cells
operating systemfetch - decode - execute
daughtercell
The Language
• Special machine language to be portable and secure
• Small instruction set (32 instructions, operands included), that is less fragile when the code is mutated
• Jumps: addressing by templates
The Operating System
• The slicer: processor time sharing mechanism– Control time for large/small creatures
• The reaper: kills cells when the memory is full from the top of a queue– The creature starts at the bottom of the queue– It moves up the queue when it fails to execute
instructions (because its algorithm is flawed), and stays where it is, or moves down when it succeeds
• The genebank saves information about each genome
Mutation
• Cosmic mutations cause the flipping of random bits in the soup at a low frequency
• Copy errors result in replication errors
• Flaws can occur during execution. The result is off by 1 at some low frequency
• Creatures activity scramble the soup
The Digital Environment: Self-replicating computer programs (colored geometric objects) occupy the RAM memory of the computer (orange background). Mutations (lightning) cause random changes in the code. Death (the skull) eliminates old or defective programs.
Energy
Territory
Abiotic environment
Amino acids
Genome
Natural lifeNatural life
Program
Assembler instructions
Operating system
Memory
CPU time
TierraTierra
The ancestor
• The simulation start with one simple self replicating ancestor - 80 instructions.
• This ancestor evolve communities of interacting “living” creatures, due to mutations.
Ancestor’s Genome01 (nop_1)01 (nop_1)01 (nop_1)01 (nop_1)04 (zero)02 (or1)03 (shl)03 (shl)18 (mov_cd)1c (adrb)00 (nop_0)00 (nop_0)00 (nop_0)00 (nop_0)07 (sub_ac)19 (mov_ab)1d (adrf)00 (nop_0)00 (nop_0)00 (nop_0)
01 (nop_1)08 (inc_a)06 (sub_ab)01 (nop_1)01 (nop_1)00 (nop_0)01 (nop_1)1e (mal)16 (call)00 (nop_0)00 (nop_0)01 (nop_1)01 (nop_1)1f (divide)14 (jmp)00 (nop_0)00 (nop_0)01 (nop_1)00 (nop_0)05 (if_cz)
01 (nop_1)01 (nop_1)00 (nop_0)00 (nop_0)0c (push_ax)0d (push_bx)0e (push_cx)01 (nop_1)00 (nop_0)01 (nop_1)00 (nop_0)1a (mov_iab)0a (dec_c)05 (if_cz)14 (jmp)00 (nop_0)01 (nop_1)00 (nop_0)00 (nop_0)08 (inc_a)
09 (inc_b)14 (jmp)00 (nop_0)01 (nop_1)00 (nop_0)01 (nop_1)05 (if_cz)01 (nop_1)00 (nop_0)01 (nop_1)01 (nop_1)12 (pop_cx)11 (pop_bx)10 (pop_ax)17 (ret)01 (nop_1)01 (nop_1)01 (nop_1)00 (nop_0)05 (if_cz)
self examfind 0000 [start] bxfind 0001 [end] axcalculate size cx
1111
reproduction loopAllocate daughter ax
jump 0010
1101
call 0011 (copy procedure)
cell division
copy procedureSave registers to stack
return
1110
1100
1010
move |bx| |ax|decrement cx
if cx==0 jump 0100
increment ax & bx
jump 0101
restore registers
1011
Ancestor
The Ancestral Program - consists of three “genes” (green solid objects). The CPU (green sphere) is executing code in the first gene, which causes the program to measure itself.
The Parasite
• Uses the ancestor’s copy procedure to copy himself
• The host is not affected by the parasite
• Superior competitor
• 45 instructions
• Population cycles
self examfind 0000 [start] bxfind 0001 [end] axcalculate size cx
1111
reproduction loopAllocate daughter ax
jump 0010
1101
call 0011 (copy procedure)cell division
1110
copy procedureSave registers to stack
return
1100
1010move |bx| |ax|decrement cx
if cx==0 jump 0100increment ax & bxjump 0101
restore registers1011
self examfind 0000 [start] bxfind 0001 [end] axcalculate size cx
1111
reproduction loopAllocate daughter ax
jump 0010
1101
call 0011 (copy procedure)
cell division
1110
Ancestor & parasite
A Parasite (blue, two piece object) uses its CPU (blue sphere)to execute the code in the third gene of a neighboring host organism (green) to replicate itself, producing daughter parasite(two-piece wire frame object).
The Hyper-Parasite
• Robust self-replicate program by itself
• When a parasite tries to use the hyper-parasite, the hyper-parasite cause the parasite to replicate the hyper-parasite
• Drive the parasites to extinction
self examfind 0000 [start] bxfind 0001 [end] axcalculate size cx
1111
call 0011
reproduction loopAllocate daughter ax
jump 0000
1101
cell division
1110
copy procedure
1100
1010
move |bx| |ax|decrement cx
if cx==0 jump 1100
increment ax & bx
jump 0101
self examfind 0000 [start] bxfind 0001 [end] axcalculate size cx
11111101
reproduction loopAllocate daughter ax
jump 0010
call 0011 (copy procedure)cell division
1110
parasite
Hyper-parasite
A Hyper-parasite (red, three piece object) steals the CPU from a parasite (blue sphere). Using the stolen CPU, and its own CPU (red sphere) it is able to produce two daughters (wire frame objects on left and right) simultaneously.
Symbionts
• Manually created
• One contains the self-exam and copy procedure
• The other contains the self-exam and reproduction loop
• 46 and 64 instructions
self examfind 0000 [start] bxfind 0001 [end] axcalculate size cxjump 0010
1111
reproduction loopAllocate daughter ax
jump 0010
1101
call 0011 (copy procedure)cell division
copy procedureSave registers to stack
return1110
1100
1010move |bx| |ax|decrement cx
if cx==0 jump 0100increment ax & bxjump 0101
restore registers1011
symbionts self examfind 0000 [start] bxfind 0001 [end] axcalculate size cxjump 0010
1111
1110
Social Hyper-Parasites
• Appear when there is genetic uniformity
• Cooperate with the previous social hyper-parasite cell
• 61 instructions
• Jumping templates of size 3
Cheaters: Hyper Hyper Parasites
• Invade the social system
• Position themselves between aggregating hyper parasites to capture the instruction pointer
• 27 instructions
Experiments (Simulations)Hosts, red, are very common. Parasites, yellow, have appeared but are still rare.
Hosts, are now rare because parasites have become very common. Immune hosts, blue, have appeared but are rare.
Immune hosts are increasing in frequency, separating the parasites into the top of memory.
Immune hosts now dominate memory, while parasites and susceptible hosts decline in frequency. The parasites will soon be driven to extinction.
Experiments (Simulations)
• Changing parameters:– Mutation rate– Selection for small/large cells
• Exploring the ecology in controlled environment– Run two competing cells without mutation – Run a fixed population of cells
• Micro/macro scales
Emergence
• Cariani defined emergence relative to the expected model as the state when the model no longer describes the system
• Emergence types:– Syntactic– Semantic– Pragmatic
AL and Biology Theory
BiologyBiologyBiologyBiology
ALALALAL
suggest the modelsuggest the factors
experimental studytest biologicaltheories
experimental studytest biologicaltheories
Biological Factors of Diversity
• Adaptation to biologic evolving environment vs. To physical environment– Emergent fitness function
• Size, shape, distribution, fragmentation, heterogeneity
Possible Extensions
• Predators
• Multi-cellular organs
• Introducing energy costs
• Separating genotype from phenotype
Summary
• A framework for synthesis of life was presented
• Natural-like behavior was detected in the system
• This system opens the way for inter-disciplinary future research
Resources
• The Tierra homepage - Thomas Raywww.hip.atr.co.jp/~ray/tierra/tierra.html
• Mac Tierra - Simon Fraserwww.santfe.edu/~smfr/mactierra.html
• Core life - Erik de Nevewww.xs4all.nl/~alife/corelife.htm