[sci.lang] Synthetic Life

ray@brahms.udel.edu (Thomas Ray) (03/19/91)

Peter Arensburger writes:

>      A couple of days ago I was listening to a talk by Richard Dawkins about 
> modeling evolutionary processes on a computer. He mentioned an experiment
> by Thomas Ray in which small (40 instructions long) autoreproducing programs
> where allowed to spread freely in a certain amount of memory. Then, by 
> randomly mutating some of the programs you could see mutant programs   
> become better adapted for reproduction.
   ...
> Has anyone heard about this experiment? If so please answer by e-mail.

     The work Peter describes is in press, and should be available in May:

Ray, T. S.  In Press.  An approach to the synthesis of life.
In: Artificial Life II, Santa Fe Institute Studies in the Sciences of
Complexity, vol. XI, (Farmer, J. D., C. Langton, S. Rasmussen, & C. Taylor,
eds).  Redwood City, CA: Addison-Wesley, 1991.

     Although I don't have a paper in it, you might be interested in the
following book which is available now:

Langton, Christopher G. [ed.].  1989.  Artificial life: proceedings of an
interdisciplinary workshop on the synthesis and simulation of living systems.
Vol. VI in the series: Santa Fe Institute studies in the sciences of
complexity.  Addison-Wesley.

     Also, I will present the work in a seminar at Princeton (biology) on
April 5, 1991. 

     If anyone can't wait till May, I could email them a LaTeX version
of the manuscript.  Below I attach an abstract, and then a summary of
the current activities of my research group.

This is a slightly expanded version of an abstract describing this work, which
was submitted to:

European Society for Evolutionary Biology, Third Congress.  Debrecen, Hungary
September 2 - 6.  Contact: Dr. Liz Pasztor - Department of Genetics -
Eotvos University 1088 Budapest - Muzeum krt. 4/a. - Hungary.

-------------------------begin abstract-----------------------------------

Synthetic Life: co-evolution in digital organisms.
THOMAS S. RAY.  University of Delaware, Newark, DE, 19716, USA,
ray@brahms.udel.edu.  302-451-2753

Ideally, the science of biology should embrace all forms of life.  However
in practice, it has been restricted to the study of a single instance of
life, life on earth.  Because our science of biology is based on a sample
size of one, we can not know what features of life are peculiar to earth,
and what features are general, characteristic of all life.  A practical
alternative to a truly comparative inter-planetary biology, is to create
synthetic life.  Evolution in a bottle provides a valuable tool for the
experimental study of evolution and ecology.

Synthetic organisms have been created based on a computer metaphor of
organic life in which CPU time is the ``energy'' resource and memory is
the ``material'' resource.  Memory is organized into informational
patterns that exploit CPU time for self-replication.  Mutation generates
new forms, and evolution proceeds by natural selection as different
genotypes compete for CPU time and memory space.  The creatures are
self-replicating computer programs, however, they can not escape because
they run exclusively on a virtual computer in its unique machine language.
The virtual computer is effectively a containment facility.

A single rudimentary ancestral ``creature'' has been designed; it is 80
machine instructions long and contains only the code for self-replication.  
This creature examines itself, determines its size and location in the
memory ``soup'', and then copies itself, one instruction at a time, to
another location in the soup.  The ancestral creature does not interact
directly with other individuals, although there is scrambling competition
for access to memory space.

A reaper kills creatures, assuring that there is always free space into which
creatures can reproduce.  When creatures are born, they enter the bottom of
the reaper queue, and the reaper always kills off the top, which is usually
the oldest creature.  However, mutant creatures often generate errors, which
cause them to rise in the reaper queue and be killed.

From a single rudimentary ancestral ``creature'' there have evolved tens of
thousands of self-replicating genotypes of many hundreds of genome size
classes.  Bit flipping mutations cause changes in the sequence of instructions
in the genome, but they do not cause changes in the size of the genome.
However, mutant genotypes make errors in their self-examination and
replication, resulting in different sized genomes.  As genetic change
generates new genotypes, variants appear which are able to replicate more
rapidly that their ancestors, and those variants increase in frequency in
the soup.

Very quickly there evolve parasites, which are not able to replicate in
isolation because they lack a large portion of the genome.  However, these
parasites search for the missing information, and if they locate it in a
nearby creature, they parasitize the information from the neighboring genome,
thereby effecting their own replication.  This informational parasitism is
a commensal relationship, as it is not directly detrimental to the host.
However, the parasites do compete with the hosts for space, and may be
superior competitors because they can more rapidly replicate their smaller
genome.  However, their advantage is frequency dependent.  As the parasites
increase in frequency, the hosts decline, and many parasites fail to locate
hosts.  In ecological runs, without genetic change, hosts and parasites
demonstrate Lotka-Volterra cycles.

In some runs, hosts evolve immunity to attack by parasites.  One immune
mechanism that has been worked out is based on the fact that the creatures
only examine themselves once, and rely on retaining the information on their
size and location for all subsequent replications.  Immune hosts cause their
parasites to loose their sense of self by failing to retain the information
on size and location.  Immune hosts function with this forgetful code by
re-examining themselves before each repliction, thus there is a metabolic
cost to the immunity.

When immune hosts appear, they often increase in frequency, devastating the
parasite populations.  In some runs where the community comes to be
dominated by immune hosts, parasites evolve that are resistant to immunity.
The above mentioned immune mechanism can by circumvented by parasites which
also re-examine themselves before each replication.

Hosts sometimes evolve a response to parasites that goes beyond immunity to
actual hyper-parasitism.  Hyper-parasites allow themselves to be parasitized,
letting the parasite use their code for a single replication.  After the
first replication, the hyper-parasite deceives the parasite by replacing the
parasite's record of its size and location with the size and location of the
hyper-parasite genome.  Thereafter, the parasite will devote its energetic
resources to replication of the hyper-parastie genome.  This is a highly
deleterious interaction, which drives the parasites to extinction.  The
hyper-parasites are facultative, getting an energy boost when the parasites
are present, but not requiring them for replication.

Evolving in the absence of parasites, hyper-parasites completely dominate
the community, resulting in a relatively uniform community characterize by
a high degree of relationship between individuals.  Under these circumstances,
sociality evolves, in the sense that the creatures evolve into forms which
can not replicate in isolation, but which can only replicate in aggregations.
These colonial creatures cooperate in the control of the flow of execution of
their algorithms.

The cooperative behavior of the social hyper-parasites makes them vulnerable
to a new class of parasites.  These cheaters, hyper-hyper-parasites, insert
themselves between cooperating social individuals, and momentarily seize
control of execution of the algroithm, just long enough to deceive the
social creatures about their size and location, causing the social creatures
to replicate the genomes of the cheaters.

In a separate experiment, two versions of the ancestral creature were made,
each with a different portion of the genome deleted.  Neither of these
genomes were able to replicate in isolation.  However, when cultured together,
they each parasitize the missing code from the other, forming an ecologically
stable obligate symbiotic relationship.  When genetic change is allowed in
the system, a very complex series of changes follows, ultimately resulting
in the merging of the two genomes into a single self-replicating genome.

The only kind of genetic change that the simulator imposes on the system is
random bit flips in the machine code of the creatures.  However, it turns
out that parasites are very sloppy replicators.  They cause significant
recombination and rearrangement of the genomes.  This spontaneous sexuality
is a powerful force for evolutionary change in the system.

A series of experiments were conducted on the effects of mutation rates on
the rates of evolution.  The parameter used to compare rates of evolution
was the rate at which self-replicating genomes decreased in size, indicating
an optimization, in an environment favoring smaller sizes.  The optimal
mutation rate was found to be a mutation affecting one in four individuals
per generation.  At higher rates the community sometimes died out, as genomes
melted under the mutational heat.  At lower rates, optimization was slower.
Fully self-replicating (non-parasitic) genomes reduced from 80 instructions
to 22 instructions overnight (more than 1500 generations, of populations
ranging from 300 to 1000 individuals).  The ancestor of size 80 requires
839 CPU cycles to replicate.  The creature of size 22 requires 146 CPU cycles
to replicate, a 5.75-fold difference in efficiency.

One of the most interesting aspects of this second instance of life is
that the bulk of the evolution is based on adaptation to the biotic
environment rather than the physical environment.  It is co-evolution
that drives the system.

It is possible to extract information on any aspect of the system
without disturbing it, from phylogeny or community structure through time
to the ``genetic makeup'' and ``metabolic processes'' of individuals.
Synthetic Life demonstrates the power of the computational approach to
science as a complement to the traditional approaches of experiment and
theory based on analysis through calculus and differential equations.

I will make an oral presentation.  I will need an overhead projector, and
two three-pronged power outlets nearby to plug in the computer and LCD panel.

---------------------------end abstract----------------------------------

     This message was distributed internally to the University of Delaware
Synthetic Life group.  I thought that other AL fans might be interested
to know what we are up to:

     We haven't met as a group for some time, so I thought I would send out
this progress report.

TECHNOLOGY REVIEW ARTICLE - The next issue of Technology Review (April/May),
due out in March, will include an article on Artificial Life.  They
will describe (among other things) the work of our group, and will include
a series of four color photos of the ALmond Monitor of Tierra that Marc Cygnus
has developed.

ALMOND TALKS - Marc Cygnus has got the ALmond monitor program talking to
the Tierra simulator using network communications.  We can now have multiple
simulators running on multiple machines, and monitor them from multiple
monitors on multiple machines.  The monitors can attach to and detach from
the simulators without disturbing them.

AL AND GA - Chris Bryden has completed his term paper discussing the
relationships between synthetic life and genetic algorithms.

THE MATRIX OF LIFE - John Billon has completed his independent study by
exploring the possibility of implementing a synthetic life system in a
matrix based environment.

THE GENETIC LANGUAGE - Dan Pirone has designed a much more powerful version
of the Tierran language, and has the bulk of the new instruction set coded.
The syntax is much more complex than the original Tierran.  We are hoping that
it will be as evolvable.

OPTIMIZATION OF TIERRA - Tom Uffner has tackled the task of optimizing the
tierra simulator code.  He is starting with the genebank manager which works,
but is very inefficient.  His proposals for optimization sound very promising.

DIVERSITY AND TURNOVER - Eric Andrews and Jim Timmons are developing code to
monitor diversity and turnover rates of size classes and genotypes in the
soups.  They are already generating the diversity indices, and are working
on the turnover rates.

AUTECOLOGY - Over winter session I automated the analysis of ecological
interactions between creatures.  Now when genotypes are saved to disk, the
code that is actually executed is marked, to distinguish it from "junk"
(unexecuted) code.  Also, the basic classes of ecological interactions have
been identified, and the interactions engaged in by a genotype are marked in
a bit field that is saved with each genotype.

EVOLUTIONARY OPTIMIZATION OF MACHINE CODES - I completed a study of the effect
of mutation rate on the rate of evolution.  As an index of the rate of
evolution, I used the rate at which self-replicating machine code programs
reduce their size.  The optimal mutation rate was one that hit about one in
four programs per generation.  At higher rates, the communities sometimes
died out, as genomes melted under the mutational heat.  The programs reduced
themselves from 80 machine instructions to 22 machine instructions overnight
(over 1500 generations, of populations ranging from 300 to 1000 individuals).
There was a 5.75-fold decrease in the number of CPU cycles required for
replication.

IRISVILLE OPENS - The two Silicon Graphics machines and the Sun in 114 Wolf
are up and running and on the net.  life.slhs.udel.edu is a 4D25TG Personal
Iris with 32MB of memory and a 1.2 GB disk.  tierra.slhs.udel.edu is a
4D258 (Iris) Data Station Server with 32MB of memory and a 1.2 GB disk.
genie.slhs.udel.edu is a Sun 3/60 with 8MB of memory, about 300 MB of disk,
and a color monitor.  The Irises are rated at 16 MIPS each, and the Sun at
about 4 MIPS.  These machines are for the exclusive use of the School of
Life and Health Sciences (SLHS), which so far has meant just for the alife
group.  The two Irises have been running the Tierra simulator around the
clock since they came up.

                             Tom Ray
                       University of Delaware
                  School of Life & Health Sciences
                      Newark, Delaware  19716
                        ray@brahms.udel.edu
                         302-451-2281 (FAX)
                            302-451-2753