This article has been published in the peer-reviewed journal PLOS Computational Biology (2013). Click to view the published version.

Evolving digital ecological networks

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Pairwise coevolution When Darwin received an orchid from Madagascar whose nectary was one and a half feet long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar.[1] In its attempt to get the nectar, the moth would have pollen rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: Xanthopan morganii. This was an example of an evolutionary prediction. However, because species coevolve within large networks of multispecies ecological interactions, this example of pairwise coevolution is more the exception than the rule.

Evolving digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions as biological organisms (e.g., competition, predation, parasitism, and mutualism). 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 (hereafter tasks) 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 (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved).


In nature, species do not evolve in isolation but in large networks of interacting species. One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by patterns of interaction between species.[2][3][4] A particularly important question concerns how coevolution, the reciprocal evolutionary change in local populations of interacting species driven by natural selection,[5] is shaped by the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,[6] was the first step towards a framework unifying relevant theories in community ecology and coevolution. Understanding how individual interactions within networks influence coevolution, and conversely how coevolution influences the overall structure of networks, requires an appreciation for how pair-wise interactions change due to their broader community contexts as well as how this community context shapes selective pressures.[7][8] Accordingly, research is now focusing on how reciprocal selection influences and is embedded within the structure of multispecies interactive webs, not only on particular species in isolation.[3]

Coevolution in a community context can be addressed theoretically via mathematical modeling and simulation,[9][10] by looking at ancient footprints of evolutionary history via ecological patterns that persist and are observable today,[11][12] and by performing laboratory experiments with microorganisms.[13] In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.[14] However, studying the evolution of interspecific interactions, which involves dealing with more complex webs of multiple interacting species, has proven to be a much more difficult challenge. A meta-analysis of host-phage interaction networks, carried out by Weitz and his team,[15] found a striking statistical structure to the patterns of infection and resistance across a wide variety of environments and methods from which the hosts and phage were obtained. However, the ecological mechanisms and evolutionary processes responsible have yet to be unraveled.

Digital ecological networks enable the direct, comprehensive, and real time observation of evolving ecological interactions between antagonistic and/or mutualistic digital organisms that are difficult to study in nature. Research using self-replicating computer programs can help us understand how coevolution shapes the emergence and diversification of coevolving species interaction networks and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of invasive species) affect the evolution of a given species. Studying the evolution of species interaction networks in these artificial evolving systems also contributes to the development of the field, while overcoming limitations evolutionary biologists may face. For example, laboratory studies have shown that historical contingency can enable or impede the outcome of the interactions between bacteria and phage, depending on the order in which mutations occur: the phage often, but not always, evolve the ability to infect a novel host.[16] Therefore, in order to obtain statistical power for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This stochastic nature of the evolutionary process was exemplified by Stephen Jay Gould's inquiry ("What would happen if the tape of the history of life were rewound and replayed?"[17]) Because of their ease in scalability and replication, evolving digital ecological networks open the door to experiments that incorporate this approach of replaying the tape of life. Such experiments allow researchers to quantify the role of historical contingency and repeatability in network evolution, enabling predictions about the architecture and dynamics of large networks of interacting species.

The inclusion of ecological interactions in digital systems enables new research avenues: investigations using self-replicating computer programs complement laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. This cross-disciplinary research program provides fertile grounds for new collaborations between computer scientists and evolutionary biologists.



The field of digital life was inspired by the rampant computer viruses of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. Steen Rasmussen was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular Core War game, where programs competed in a digital battle ground for the computer's resources.[18] Although Rasmussen observed some interesting evolution, mutations in this early genetic programming language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Thomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.[19]


Thomas S. Ray created a genetic language similar to earlier digital systems, but added several key features that made it more suitable for evolution in his artificial life system, Tierra. Primarily, he prevented instructions from writing beyond the privately allocated memory space, thus limiting the potential for organisms writing over others.[19] The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure led to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication code in other organisms, allowing those "cheaters", which were originally referred to as parasites in Ray's work, to further shrink their genetic programs. This form of cheating was the first evolved ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the formal study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years.


In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida[20][21] at the California Institute of Technology. They added the ability for digital organisms to obtain bonus CPU cycles for performing computational tasks, like adding two numbers together. In Avida, researchers can define the available tasks and set the consequences for organisms upon successful calculation.[21] When organisms are rewarded with additional CPU cycles, their replication rate increases. Since Avida was designed specifically as a scientific tool, it allows users to collect a comprehensive suite of data about evolving populations. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab[22] at the BEACON Center currently continues development of Avida.

Self-replication of a digital organism. The circular genome of a digital organism, on the left, consists of a set of instructions (represented here as letters). Some of these instructions are involved in the copy process and others in completing computational tasks. The experimenter determines the probability of mutations. Copy mutations occur when an instruction is copied incorrectly, and is instead replaced by a random instruction in the forming offspring's genome (as can be seen in the offspring, on the right). Other types of mutations, such as insertions and deletions are also implemented. Initially, all three of the parent's hardware pointers are in the same location, at the instruction represented here by r. As execution begins, the instruction pointer (indicated by an i) advances. The first few instructions allocate space for the offspring, and then move the write-head pointer (indicated by a w) into that space. The flow pointer (indicated by an f) is used to move the other pointers to genetically specified locations. The remainder of the process of self replication is carried out by a set of instructions at the end of the genome, commonly referred to as the copy-loop. When execution reaches the copy-loop, the flow pointer is used to keep the flow of execution inside of a loop that advances the read and write heads and copies instructions from the parent genome (read-head) to the offspring genome (write-head). Arcs inside the circular genome represent the execution flow, showing most of the CPU cycles being used during the copying process. After genome replication is complete, the parent organism divides off its offspring, which must now fend for itself within the Avida world. This animation was generated using Avida-ED, which is available under the terms of the GNU Lesser General Public License.[20]


Digital organisms[edit]

Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programming language in Avida contains instructions for manipulating values in registers and stacks as well as for control flow and mathematical operations. Each digital organism contains virtual hardware on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutations). While most mutations are detrimental, mutants will occasionally have higher fitness than their parents, thereby providing the basis for natural selection with all of the necessary components for Darwinian evolution. Digital organisms can acquire random binary numbers from the environment and are able to manipulate them using their genetic instructions, including the logic instruction NAND. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.[23] If the output of processing random numbers from the environment corresponds to the result of a particular logic task, then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its phenotype.

Digital interactions[edit]

Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions. Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction.

Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions Digital organisms process binary numbers taken from the environment using the instructions that constitute their genomes. When the output of processing those numbers equals the result of applying a logic function, the digital organism is said to have performed that task. The combination of tasks performed by a digital organism partially defines its phenotype. The center of the figure depicts the output of applying eight logical operators (tasks) on the two input numbers above. On the left and right, five hypothetical host (green) and parasite (red) phenotypes are represented as columns (on the top) and as circles (below). On the top, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. In the lower part, the interaction networks between hosts and parasites are illustrated, which result from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. The order of tasks (from top to bottom) indicates the time needed for a digital organism to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a modular (left) or nested (right) interaction network can emerge.

Host-parasite interactions[edit]

In host-parasite interactions, the parasite organisms benefits at the expense of the host organisms. Parasites in Avida are implemented just like other self-replicating digital organisms, but they live inside hosts and execute parasitic threads using CPU cycles stolen from their hosts.[24] Because parasites impose a cost (lost CPU cycles) on hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selective pressure for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task. Thus a host is resistant to a particular parasite if they do not share any tasks. This mechanism of infection mimics the inverse-gene-for-gene model,[25] in which infection only occurs if a host susceptibility gene (the presence of a logic task) is matched by a parasite virulence gene (a parasite performing the same task). Additional infection mechanisms, such as the matching allele and gene-for-gene models,[26] can also be implemented.

In traditional infection genetic models, host resistance and pathogen infectivity have associated costs. These costs are an important part of theory about why defense genes do not always fix rapidly within populations.[13] Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks may also allow organisms access to resources present in the abiotic environment, and the environment can be carefully manipulated to control the relative costs or benefits of resistance.

By keeping track of task-based phenotypes as well as tracking information about successful infections in the community, researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites. The structure of these networks is a result of the interplay between ecological processes, mainly host abundance, and coevolutionary dynamics, which lead to changes in host specificity.[27]

Evolving host-parasite webs. Starting from a host phenotype (green node) and a parasite phenotype (red node), a complex network of interactions (arrows) between hosts and parasites emerges from the coevolutionary process. Nodes representing new host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by node size) altering interaction patterns, and thus influencing subsequent coevolutionary dynamics. Interactions between a host phenotype and a parasite phenotype are depicted as arrows pointing in opposite directions: the thickness of red arrows indicates the fraction of infections that a particular parasite is responsible for inflicting on the indicated host phenotype, while the thickness of the green arrows indicates the fraction of all of the hosts a particular parasite phenotype infects that is accounted for by the indicated host phenotype. Often asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture. At these times, most parasite phenotypes are infecting only a small fraction of hosts expressing a given phenotype. Instead, the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the GNU General Public License.[28]

Mutualistic interactions[edit]

Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented in evolving digital experiments by following the same task matching approach used for host-parasite interactions, but using free-living organisms instead of parasitic threads. For example, one way to set up a plant-pollinator type of interaction is to use an environment containing two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, if tasks overlap between a pollinator and a plant it visits, pollination is successful and both organisms obtain extra CPU cycles. Thus, these digital organisms obtain mutual benefit when they perform at least one common task, and more common tasks lead to larger mutual benefits. While this is one specific way to enable mutualistic interactions, many others are possible in Avida. Interactions that begin as parasitic may even evolve to be mutualistic under the right conditions. In most cases, coevolution will result in concurrent interactions between multiple phenotypes. Thus, observed networks of mutualistic interactions can inform our understanding about the outcomes and processes of coevolution in complex communities.[29]

Predator-prey interactions[edit]

While host-parasite and mutualistic interactions are determined by task-based phenotypes, predator-prey interactions are determined by behavior. Predators are digital organisms that have evolved from ancestral prey phenotypes to locate, attack, and consume organisms. When a predator executes an attack instruction (acquired through mutation), it kills a neighboring organism. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to the level accumulated by the consumed prey. Selection favors behavioral strategies in prey that enable them to avoid being eaten. At the same time, selection favors predators with behavioral strategies that improve their food finding and prey attacking abilities. The resulting diversity in the continuously evolving behavioral phenotypes creates dynamic predator-prey interaction networks in which selective forces are constantly changing as a consequence of the emergence of new, and loss of old, behaviors. Because predators and prey move around in and use information about their environment, these experiments are typically carried out using spatially structured populations. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though the choice of the environment is at the discretion of the experimenter.


Studies of digital organisms allows a depth of research of evolutionary processes that is not possible with natural ecosystems. They therefore provide a complementary approach to traditional studies of natural or experimental evolution. A key caveat in translating predictions of evolving digital networks to biological ones is that mechanistic details may differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, the general operational processes (Darwinian evolution, mutualism, parasitism, etc) are equivalent, and so studies utilizing digital networks can uncover rules shaping the web of interactions among species and their coevolutionary processes. The evolution of digital communities and their ecological networks also allows for a perfect 'fossil record' of how the number and patterns of links among interacting phenotypes evolved. The selection pressures and parameters can also be controlled to an extent that is impossible in experimental evolution of living organisms.

For example, the stability-diversity debate[30] is a long-standing debate about whether more diverse ecological networks are also more stable. Mathematical models were able to show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize ecosystems.[31] These techniques also enable detailed analysis of coevolutionary dynamics in multispecies networks, their historical contingency, and their genetic constraints.[32]


  1. ^ Kritsky, G (1991). "Darwin's Madagascan Hawk Moth prediction". American Entomologist. 37 (4): 206–209. doi:10.1093/ae/37.4.206.
  2. ^ Post DM, Palkovacs EP (June 2009). "Eco-evolutionary feedbacks in community and ecosystem ecology: interactions between the ecological theatre and the evolutionary play". Philosophical Transactions of the Royal Society of London. Series B, Biological Sciences. 364 (1523): 1629–40. doi:10.1098/rstb.2009.0012. PMC 2690506. PMID 19414476.
  3. ^ a b Thompson JN (February 2009). "The coevolving web of life". The American Naturalist. 173 (2): 125–40. doi:10.1086/595752. PMID 19119876.
  4. ^ Schoener TW (January 2011). "The newest synthesis: understanding the interplay of evolutionary and ecological dynamics". Science. 331 (6016): 426–9. doi:10.1126/science.1193954. PMID 21273479.
  5. ^ Thompson JN (June 1999). "The evolution of species interactions". Science. 284 (5423): 2116–8. doi:10.1126/science.284.5423.2116. PMID 10381869.
  6. ^ Janzen DH (1990). "When is it coevolution?". Evolution. 34 (3): 611–612. doi:10.2307/2408229. JSTOR 2408229. PMID 28568694.
  7. ^ Fox LR (1988). "Diffuse coevolution within complex communities". Ecology. 69 (4): 906–907. doi:10.2307/1941243. JSTOR 1941243.
  8. ^ Thompson JN (1994). The coevolutionary process. University of Chicago Press.
  9. ^ Yoder JB, Nuismer SL (December 2010). "When does coevolution promote diversification?". The American Naturalist. 176 (6): 802–17. doi:10.1086/657048. PMID 20950142.
  10. ^ Gilman RT, Nuismer SL, Jhwueng DC (March 2012). "Coevolution in multidimensional trait space favours escape from parasites and pathogens". Nature. 483 (7389): 328–30. doi:10.1038/nature10853. PMID 22388815.
  11. ^ Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (August 2007). "Non-random coextinctions in phylogenetically structured mutualistic networks". Nature. 448 (7156): 925–8. doi:10.1038/nature05956. hdl:10261/38513. PMID 17713534.
  12. ^ Gómez JM, Verdú M, Perfectti F (June 2010). "Ecological interactions are evolutionarily conserved across the entire tree of life". Nature. 465 (7300): 918–21. doi:10.1038/nature09113. hdl:10261/32513. PMID 20520609.
  13. ^ a b Bohannan BJ, Lenski RE (2000). "Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage". Ecology Letters. 3 (4): 362–377. doi:10.1046/j.1461-0248.2000.00161.x.
  14. ^ Lenski RE, Travisano M (July 1994). "Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations". Proceedings of the National Academy of Sciences of the United States of America. 91 (15): 6808–14. doi:10.1073/pnas.91.15.6808. PMC 44287. PMID 8041701.
  15. ^ Flores CO, Meyer JR, Valverde S, Farr L, Weitz JS (July 2011). "Statistical structure of host-phage interactions". Proceedings of the National Academy of Sciences of the United States of America. 108 (28): E288–97. doi:10.1073/pnas.1101595108. PMC 3136311. PMID 21709225.
  16. ^ Meyer JR, Dobias DT, Weitz JS, Barrick JE, Quick RT, Lenski RE (January 2012). "Repeatability and contingency in the evolution of a key innovation in phage lambda". Science. 335 (6067): 428–32. doi:10.1126/science.1214449. PMC 3306806. PMID 22282803.
  17. ^ Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.
  18. ^ Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990). "The coreworld: emergence and evolution of cooperative structures in a computational chemistry". Physica D. 42 (1–3): 111–34. doi:10.1016/0167-2789(90)90070-6.
  19. ^ a b Ray TS (1992). "An approach to the synthesis of life.". In Langton CG, Taylor C, Farmer JD, Rasmussen S (eds.). Proceedings of Artificial Life. II. pp. 371–408.
  20. ^ a b Avida download page Archived 2012-06-28 at WebCite (WebCite archive)
  21. ^ a b Ofria C, Wilke CO (2004). "Avida: a software platform for research in computational evolutionary biology". Artificial Life. 10 (2): 191–229. CiteSeerX doi:10.1162/106454604773563612. PMID 15107231.
  22. ^ Devolab
  23. ^ Lenski RE, Ofria C, Collier TC, Adami C (August 1999). "Genome complexity, robustness and genetic interactions in digital organisms". Nature. 400 (6745): 661–4. doi:10.1038/23245. PMID 10458160.
  24. ^ Zaman, L., Devangam, S, Ofria, C. (2011). Rapid host-parasite coevolution drives the production and maintenance of diversity in digital organisms. Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation (GECCO), 219-226.
  25. ^ Fenton A, Antonovics J, Brockhurst MA (December 2009). "Inverse-gene-for-gene infection genetics and coevolutionary dynamics". The American Naturalist. 174 (6): E230–42. doi:10.1086/645087. PMID 19852618.
  26. ^ Agrawal A, Lively CM (2002). "Infection genetics: gene-for-gene versus matching-alleles models an all points in between". Evolutionary Ecology Research. 4: 79–90.
  27. ^ Poulin R (October 2010). "Network analysis shining light on parasite ecology and diversity". Trends in Parasitology. 26 (10): 492–8. doi:10.1016/ PMID 20561821.
  28. ^ Pajek Wiki Homepage (WebCite copy).
  29. ^ Guimarães PR, Jordano P, Thompson JN (September 2011). "Evolution and coevolution in mutualistic networks". Ecology Letters. 14 (9): 877–85. doi:10.1111/j.1461-0248.2011.01649.x. hdl:10261/40441. PMID 21749596.
  30. ^ McCann KS (May 2000). "The diversity-stability debate". Nature. 405 (6783): 228–33. doi:10.1038/35012234. PMID 10821283.
  31. ^ Mougi A, Kondoh M (July 2012). "Diversity of interaction types and ecological community stability". Science. 337 (6092): 349–51. doi:10.1126/science.1220529. PMID 22822151.
  32. ^ Thébault E, Fontaine C (August 2010). "Stability of ecological communities and the architecture of mutualistic and trophic networks". Science. 329 (5993): 853–6. doi:10.1126/science.1188321. PMID 20705861.