Tierra (computer simulation)

Last updated
A running Tierra simulation Tierra.png
A running Tierra simulation

Tierra is a computer simulation developed by ecologist Thomas S. Ray in the early 1990s in which computer programs compete for time (central processing unit (CPU) time) and space (access to main memory). In this context, the computer programs in Tierra are considered to be evolvable and can mutate, self-replicate and recombine. Tierra's virtual machine is written in C. [1] It operates on a custom instruction set designed to facilitate code changes and reordering, including features such as jump to template [2] (as opposed to the relative or absolute jumps common to most instruction sets).



The basic Tierra model has been used to experimentally explore in silico the basic processes of evolutionary and ecological dynamics. Processes such as the dynamics of punctuated equilibrium, host-parasite co-evolution and density-dependent natural selection are amenable to investigation within the Tierra framework. A notable difference between Tierra and more conventional models of evolutionary computation, such as genetic algorithms, is that there is no explicit, or exogenous fitness function built into the model. Often in such models there is the notion of a function being "optimized"; in the case of Tierra, the fitness function is endogenous: there is simply survival and death.

According to Thomas S. Ray and others, this may allow for more "open-ended" evolution, in which the dynamics of the feedback between evolutionary and ecological processes can itself change over time (see evolvability), although this claim has not been realized – like other digital evolution systems, it eventually reaches a point where novelty ceases to be created, and the system at large begins either looping or ceases to 'evolve'. The issue of how true open-ended evolution can be implemented in an artificial system is still an open question in the field of artificial life. [3]

Mark Bedau and Norman Packard developed a statistical method of classifying evolutionary systems and in 1997, Bedau et al. applied these statistics to Evita, an Artificial life model similar to Tierra and Avida, but with limited organism interaction and no parasitism, and concluded that Tierra-like systems do not exhibit the open-ended evolutionary signatures of naturally evolving systems. [4]

Russell K. Standish has measured the informational complexity of Tierran 'organisms', and has similarly not observed complexity growth in Tierran evolution. [5]

Tierra is an abstract model, but any quantitative model is still subject to the same validation and verification techniques applied to more traditional mathematical models, and as such, has no special status. The creation of more detailed models in which more realistic dynamics of biological systems and organisms are incorporated is now an active research field (see systems biology).

See also

Related Research Articles

Genetic algorithm Competitive algorithm for searching a problem space

In computer science and operations research, a genetic algorithm (GA) is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to generate high-quality solutions to optimization and search problems by relying on biologically inspired operators such as mutation, crossover and selection.

In computational intelligence (CI), an evolutionary algorithm (EA) is a subset of evolutionary computation, a generic population-based metaheuristic optimization algorithm. An EA uses mechanisms inspired by biological evolution, such as reproduction, mutation, recombination, and selection. Candidate solutions to the optimization problem play the role of individuals in a population, and the fitness function determines the quality of the solutions. Evolution of the population then takes place after the repeated application of the above operators.

Evolutionary computation Trial and error problem solvers with a metaheuristic or stochastic optimization character

In computer science, evolutionary computation is a family of algorithms for global optimization inspired by biological evolution, and the subfield of artificial intelligence and soft computing studying these algorithms. In technical terms, they are a family of population-based trial and error problem solvers with a metaheuristic or stochastic optimization character.

Bio-inspired computing, short for biologically inspired computing, is a field of study which seeks to solve computer science problems using models of biology. It relates to connectionism, social behavior, and emergence. Within computer science, bio-inspired computing relates to artificial intelligence and machine learning. Bio-inspired computing is a major subset of natural computation.

Digital organism

A digital organism is a self-replicating computer program that mutates and evolves. Digital organisms are used as a tool to study the dynamics of Darwinian evolution, and to test or verify specific hypotheses or mathematical models of evolution. The study of digital organisms is closely related to the area of artificial life.


Avida is an artificial life software platform to study the evolutionary biology of self-replicating and evolving computer programs. Avida is under active development by Charles Ofria's Digital Evolution Lab at Michigan State University; the first version of Avida was designed in 1993 by Ofria, Chris Adami and C. Titus Brown at Caltech, and has been fully reengineered by Ofria on multiple occasions since then. The software was originally inspired by the Tierra system.

Interactive evolutionary computation (IEC) or aesthetic selection is a general term for methods of evolutionary computation that use human evaluation. Usually human evaluation is necessary when the form of fitness function is not known or the result of optimization should fit a particular user preference.

In natural evolution and artificial evolution the fitness of a schema is rescaled to give its effective fitness which takes into account crossover and mutation.

In artificial intelligence, artificial immune systems (AIS) are a class of computationally intelligent, rule-based machine learning systems inspired by the principles and processes of the vertebrate immune system. The algorithms are typically modeled after the immune system's characteristics of learning and memory for use in problem-solving.

Artificial creation is a field of research that studies the primary synthesis of complex lifelike structures from primordial lifeless origins.

Extremal optimization (EO) is an optimization heuristic inspired by the Bak–Sneppen model of self-organized criticality from the field of statistical physics. This heuristic was designed initially to address combinatorial optimization problems such as the travelling salesman problem and spin glasses, although the technique has been demonstrated to function in optimization domains.

The learnable evolution model (LEM) is a non-Darwinian methodology for evolutionary computation that employs machine learning to guide the generation of new individuals. Unlike standard, Darwinian-type evolutionary computation methods that use random or semi-random operators for generating new individuals, LEM employs hypothesis generation and instantiation operators.

Autoconstructive evolution is a process in which the entities undergoing evolutionary change are themselves responsible for the construction of their own offspring and thus for aspects of the evolutionary process itself. Because biological evolution is always autoconstructive, this term mainly occurs in evolutionary computation, to distinguish artificial life type systems from conventional genetic algorithms where the GA performs replication artificially. The term was coined by Lee Spector.

Dr. Charles A. Ofria is a Professor in the Department of Computer Science and Engineering at Michigan State University, the director of the Digital Evolution (DEvo) Lab there, and Director of the BEACON Center for the Study of Evolution in Action. He is the son of the late Charles Ofria, who developed the first fully integrated shop management program for the automotive repair industry. Ofria attended Stuyvesant High School and graduated from Ward Melville High School in 1991. He obtained a B.S. in Computer Science, Pure Mathematics, and Applied Mathematics from Stony Brook University in 1994, and a Ph.D. in Computation and Neural Systems from the California Institute of Technology in 1999. Ofria's research focuses on the interplay between computer science and Darwinian evolution.

Artificial development, also known as artificial embryogeny or machine intelligence or computational development, is an area of computer science and engineering concerned with computational models motivated by genotype-phenotype mappings in biological systems. Artificial development is often considered a sub-field of evolutionary computation, although the principles of artificial development have also been used within stand-alone computational models.

Natural computing, also called natural computation, is a terminology introduced to encompass three classes of methods: 1) those that take inspiration from nature for the development of novel problem-solving techniques; 2) those that are based on the use of computers to synthesize natural phenomena; and 3) those that employ natural materials to compute. The main fields of research that compose these three branches are artificial neural networks, evolutionary algorithms, swarm intelligence, artificial immune systems, fractal geometry, artificial life, DNA computing, and quantum computing, among others.

Artificial life A field of study wherein researchers examine systems related to natural life, its processes, and its evolution, through the use of simulations

Artificial life is a field of study wherein researchers examine systems related to natural life, its processes, and its evolution, through the use of simulations with computer models, robotics, and biochemistry. The discipline was named by Christopher Langton, an American theoretical biologist, in 1986. In 1987 Langton organized the first conference on the field, in Los Alamos, New Mexico. There are three main kinds of alife, named for their approaches: soft, from software; hard, from hardware; and wet, from biochemistry. Artificial life researchers study traditional biology by trying to recreate aspects of biological phenomena.

Evolving digital ecological network

Evolving digital ecological networks are webs of interacting, self-replicating, and evolving computer programs that experience the same major ecological interactions as biological organisms. Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two ancestral organisms, the formation of ecological networks can be observed in real-time by tracking interactions between the constantly evolving organism phenotypes. These phenotypes may be defined by combinations of logical computations that digital organisms perform and by expressed behaviors that have evolved. The types and outcomes of interactions between phenotypes are determined by task overlap for logic-defined phenotypes and by responses to encounters in the case of behavioral phenotypes. Biologists use these evolving networks to study active and fundamental topics within evolutionary ecology.

Outline of evolution Hierarchical outline list of articles related to evolution

The following outline is provided as an overview of and topical guide to evolution:


  1. Ray, Thomas. "What this Program is" . Retrieved 3 January 2014.
  2. Ray, Thomas. "Available instructions" . Retrieved 3 January 2014.
  3. Bedau M.A., McCaskill J.S. et al., "Open problems in artificial life", Artificial Life, 2000 Fall 6(4):363-76
  4. Bedau, M.A., Snyder, E., Brown, C.T. and Packard, N.H. 1997, "A Comparison of Evolutionary Activity in Artificial Evolving Systems and in the Biosphere", in Fourth European Conference on Artificial Life, Husbands and Harvey (eds), MIT press, p125
  5. Standish, R.K. 2003 "Open-ended artificial evolution", International Journal of Computational Intelligence and Applications 3(2), 167-175

Further reading