Evolution , Ecology and Optimization of Digital Organisms

Digital organisms have been synthesized 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 “genetic” 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. In addition, new genotypes appear which exploit other “creatures” for informational or energetic resources. The digital organisms are self-replicating computer programs, however, they can not escape because they run exclusively on a virtual computer in its unique machine language. From a single ancestral “creature” there have evolved tens of thousands of self-replicating genotypes of hundreds of genome size classes. Parasites evolved, then creatures that were immune to parasites, and then parasites that could circumvent the immunity. Hyper-parasites evolved which subvert parasites to their own reproduction and drive them to extinction. The resulting genetically uniform communities evolve sociality in the sense of creatures that can only reproduce in cooperative aggregations, and these aggregations are then invaded by cheating hyper-hyper-parasites. Diverse ecological communities have emerged. These digital communities have been used to experimentally study ecological and evolutionary processes: e.g., competitive exclusion and coexistance, symbiosis, host/parasite density dependent population regulation, the effect of parasites in enhancing community diversity, evolutionary arms races, punctuated equilibrium, and the role of chance and historical factors in evolution. 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. Digital 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. Optimization experiments have shown that freely evolving digital organisms can optimize their algorithms by a factor of 5.75 in a few hours of real time. In addition, evolution discovered the optimization technique of “unrolling the loop”. Evolution may provide a new method for the optimization or generation of application programs. This method may prove particularly useful for programming massively parallel machines.

[1]  S. Gould Wonderful Life: The Burgess Shale and the Nature of History , 1989 .

[2]  A S Perelson,et al.  Modeling adaptive biological systems. , 1989, Bio Systems.

[3]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[4]  S. Gould,et al.  Punctuated equilibria: the tempo and mode of evolution reconsidered , 1977, Paleobiology.

[5]  S. Morris Burgess Shale Faunas and the Cambrian Explosion , 1989, Science.

[6]  S. Stanley An ecological theory for the sudden origin of multicellular life in the late precambrian. , 1973, Proceedings of the National Academy of Sciences of the United States of America.

[7]  Clive Richards,et al.  The Blind Watchmaker , 1987, Bristol Medico-Chirurgical Journal.

[8]  Richard Dawkins,et al.  The Evolution of Evolvability , 1987, ALIFE.

[9]  Eugene H. Spafford,et al.  Computer Viruses: Dealing with Electronic Vandalism and Programmed Threats , 1989 .

[10]  S. Gould,et al.  Punctuated equilibria: an alternative to phyletic gradualism , 1972 .

[11]  R. Paine Food Web Complexity and Species Diversity , 1966, The American Naturalist.

[12]  J. Felsenstein A primer of population biology , 1972 .

[13]  Fred Cohen,et al.  Computer viruses—theory and experiments , 1990 .

[14]  S. Kauffman,et al.  Autocatalytic replication of polymers , 1986 .

[15]  Christopher G. Langton,et al.  Artificial Life: Proceedings Of An Interdisciplinary Workshop On The Synthesis And Simulation Of Living Systems , 1989 .

[16]  Christopher G. Langton,et al.  Studying artificial life with cellular automata , 1986 .

[17]  V. Volterra Variations and Fluctuations of the Number of Individuals in Animal Species living together , 1928 .

[18]  Chris Langton Virtual State Machines in Cellular Automata , 1987, Complex Syst..

[19]  Steen Rasmussen,et al.  The coreworld: emergence and evolution of cooperative structures in a computational chemistry , 1990 .

[20]  Howard H. Pattee,et al.  Simulations, Realizations, and Theories of Life , 1987, ALIFE.

[21]  A. Kohn [Computer viruses]. , 1989, Harefuah.

[22]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .