PLoSWiki http://topicpages.ploscompbiol.org/wiki/Main_Page MediaWiki 1.17.0 first-letter Media Special Talk User User talk PLoSWiki PLoSWiki talk File File talk MediaWiki MediaWiki talk Template Template talk Help Help talk Category Category talk Evolving digital ecological networks 81 476 2012-04-09T15:05:30Z Zamanlui 11 Adding major and minor headings for main content =The Necessity of Computational Approaches= =What are Digital Ecological Networks? = =Where did the idea originate?= ==Coreworld== ==Tierra== ==Avida== ==Adding ecology== =How are digital organisms and their interactions implemented?= ==Digital organisms== ==Digital interactions== =What can we learn From them?= 477 2012-04-09T15:38:46Z Mfortuna 10 =Why using digital ecosystems= =What are digital ecological networks?= =Where did the idea originate?= ==Coreworld== ==Tierra== ==Avida== ==Adding ecology== =How are digital organisms and their interactions implemented?= ==Digital organisms== ==Digital interactions== =What can we learn from them?= =References= 478 2012-04-09T15:42:08Z Mfortuna 10 /* Why using digital ecosystems */ =Why using digital ecosystems= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= =Where did the idea originate?= ==Coreworld== ==Tierra== ==Avida== ==Adding ecology== =How are digital organisms and their interactions implemented?= ==Digital organisms== ==Digital interactions== =What can we learn from them?= =References= 479 2012-04-09T15:42:39Z Mfortuna 10 /* What are digital ecological networks? */ =Why using digital ecosystems= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= ==Coreworld== ==Tierra== ==Avida== ==Adding ecology== =How are digital organisms and their interactions implemented?= ==Digital organisms== ==Digital interactions== =What can we learn from them?= =References= 480 2012-04-09T15:44:24Z Mfortuna 10 /* Where did the idea originate? */ =Why using digital ecosystems= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== ==Digital interactions== =What can we learn from them?= =References= 481 2012-04-09T15:45:12Z Mfortuna 10 /* Digital organisms */ =Why using digital ecosystems= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== =What can we learn from them?= =References= 482 2012-04-09T15:45:39Z Mfortuna 10 /* Digital interactions */ =Why using digital ecosystems= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= =References= 483 2012-04-09T15:46:16Z Mfortuna 10 /* What can we learn from them? */ =Why using digital ecosystems= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =References= 484 2012-04-09T15:49:23Z Mfortuna 10 =Why using digital ecosystems= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 485 2012-04-09T15:49:43Z Mfortuna 10 =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 486 2012-04-09T15:51:19Z Mfortuna 10 "It is hard to realize that the world as we know is just one of many possibilities''[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 487 2012-04-09T15:51:52Z Mfortuna 10 "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 488 2012-04-09T15:53:16Z Mfortuna 10 "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 489 2012-04-09T15:54:34Z Mfortuna 10 "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process (``What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 490 2012-04-09T15:55:33Z Mfortuna 10 /* Why using digital ecosystems? */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Fig.1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 491 2012-04-09T15:56:09Z Mfortuna 10 /* Why using digital ecosystems? */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Fig. 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 492 2012-04-09T15:56:44Z Mfortuna 10 /* What are digital ecological networks? */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the Digital Organisms section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Fig.3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 493 2012-04-09T15:57:57Z Mfortuna 10 /* What are digital ecological networks? */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see Digital Interactions for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 494 2012-04-09T16:01:47Z Mfortuna 10 /* Adding ecology */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Fig. 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction \emph{nand}. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 495 2012-04-09T16:03:50Z Mfortuna 10 /* Digital organisms */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 496 2012-04-09T16:04:07Z Mfortuna 10 /* Digital organisms */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e. mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Fig.4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 497 2012-04-09T16:04:53Z Mfortuna 10 /* Digital interactions */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ``private" allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e. mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g. CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 498 2012-04-09T16:06:17Z Mfortuna 10 /* Tierra */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e. mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g. CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 499 2012-04-09T16:07:02Z Mfortuna 10 /* Digital organisms */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g. CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 500 2012-04-09T16:09:53Z Mfortuna 10 /* Digital interactions */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ``fossil record" of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 501 2012-04-09T16:11:02Z Mfortuna 10 /* What can we learn from them? */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT\&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 502 2012-04-09T16:11:45Z Mfortuna 10 /* Acknowledgments */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.\\ 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.\\ 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.\\ 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.\\ 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118.\\ 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.\\ 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.\\ 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.\\ 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.\\ 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.\\ 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.\\ 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.\\ 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.\\ 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.\\ 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.\\ 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.\\ 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.\\ 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.\\ 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.\\ 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 503 2012-04-09T16:12:59Z Mfortuna 10 /* References */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimar\~a˜es PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. G\'omez JM, Verd\'u M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimar\~aes PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Th\'ebault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 504 2012-04-09T16:16:06Z Mfortuna 10 /* References */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 505 2012-04-09T17:09:42Z Zamanlui 11 moved [[Digital Ecological Networks]] to [[Evolving digital ecological networks]]: Fitting better with wiki standards "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why using digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 507 2012-04-09T17:10:55Z Zamanlui 11 Changing tense of heading "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 509 2012-04-10T14:02:46Z Mfortuna 10 /* Why use digital ecosystems? */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. [[File:Fig 1.png|200px|thumb|left|alt text]] =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 510 2012-04-10T14:13:39Z Mfortuna 10 /* Why use digital ecosystems? */ "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 512 2012-04-10T20:54:57Z Zamanlui 11 [[Image:DigiNet_Fig_1.png|250px|thumb|Figure 1: Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see Figure 1). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 513 2012-04-10T21:00:46Z Zamanlui 11 [[Image:DigiNet_Fig_1.png|250px|thumb|{{Figure|1}}Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 519 2012-04-10T23:40:22Z Zamanlui 11 [[Image:DigiNet_Fig_1.png|250px|thumb|{{Figure|1}}Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|250px|thumb|{{Figure|3}} The evolution of host-parasite interaction networks determined by organisms performing overlapping logic functions. TODO:Expand caption]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 572 2012-04-12T11:21:41Z Mfortuna 10 /* Digital organisms */ [[Image:DigiNet_Fig_1.png|250px|thumb|{{Figure|1}}Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|250px|thumb|{{Figure|3}} The evolution of host-parasite interaction networks determined by organisms performing overlapping logic functions. TODO:Expand caption]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[File:Avida self-replication.ogv]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 573 2012-04-12T11:23:05Z Mfortuna 10 /* Digital organisms */ [[Image:DigiNet_Fig_1.png|250px|thumb|{{Figure|1}}Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|250px|thumb|{{Figure|3}} The evolution of host-parasite interaction networks determined by organisms performing overlapping logic functions. TODO:Expand caption]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 574 2012-04-12T11:24:36Z Mfortuna 10 /* Digital organisms */ [[Image:DigiNet_Fig_1.png|250px|thumb|{{Figure|1}}Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|250px|thumb|{{Figure|3}} The evolution of host-parasite interaction networks determined by organisms performing overlapping logic functions. TODO:Expand caption]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv|200px|thumb|right|Self-replication of a digital organism]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 575 2012-04-12T11:27:54Z Mfortuna 10 /* Digital organisms */ [[Image:DigiNet_Fig_1.png|250px|thumb|{{Figure|1}}Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|250px|thumb|{{Figure|3}} The evolution of host-parasite interaction networks determined by organisms performing overlapping logic functions. TODO:Expand caption]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 576 2012-04-12T11:29:14Z Mfortuna 10 /* Digital interactions */ [[Image:DigiNet_Fig_1.png|250px|thumb|{{Figure|1}}Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|250px|thumb|{{Figure|3}} The evolution of host-parasite interaction networks determined by organisms performing overlapping logic functions. TODO:Expand caption]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 577 2012-04-12T11:36:44Z Mfortuna 10 /* What are digital ecological networks? */ [[Image:DigiNet_Fig_1.png|250px|thumb|{{Figure|1}}Can digital evolution help? TODO:Expand caption]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 579 2012-04-12T11:42:56Z Mfortuna 10 [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Figure 2 and Video 1 in Supplementary Material, see also the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see Figure 3). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 580 2012-04-12T11:50:08Z Mfortuna 10 /* What are digital ecological networks? */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 581 2012-04-12T11:51:40Z Mfortuna 10 /* Digital organisms */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Figure 2 and Video 1 in Supplementary Material) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 582 2012-04-12T11:53:17Z Mfortuna 10 /* Digital organisms */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (Figure 4 and Video 2 in Supplementary Material). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 583 2012-04-12T11:54:24Z Mfortuna 10 /* Digital interactions */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({See Video|2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{Video|2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 584 2012-04-12T11:54:42Z Mfortuna 10 /* Digital interactions */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({See Video|2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video|2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 586 2012-04-12T11:55:23Z Mfortuna 10 /* Digital interactions */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 587 2012-04-12T11:55:43Z Mfortuna 10 /* Digital interactions */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}})). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 588 2012-04-12T11:58:22Z Mfortuna 10 /* Why use digital ecosystems? */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 589 2012-04-12T12:03:01Z Mfortuna 10 /* References */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= *Jacob F (1977) "Evolution and tinkering". "Science" 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 591 2012-04-12T12:04:17Z Mfortuna 10 [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"<ref>[1]</ref>. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= *Jacob F (1977) "Evolution and tinkering". "Science" 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 592 2012-04-12T12:04:38Z Mfortuna 10 /* References */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"<ref>[1]</ref>. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1. Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 593 2012-04-12T12:06:06Z Mfortuna 10 [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"<ref>Jacob, 1977</ref>. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= Jacob F (1977) "Evolution and tinkering". "Science" 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 594 2012-04-12T12:07:48Z Mfortuna 10 [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"<ref>[1]</ref>. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= [1] Jacob F (1977) "Evolution and tinkering". "Science" 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 595 2012-04-12T12:08:25Z Mfortuna 10 [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[Media:Self-replication.ogv{{Video|1}}]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 601 2012-04-12T17:05:06Z Mfortuna 10 /* Digital organisms */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 602 2012-04-12T17:07:34Z Mfortuna 10 /* How are digital organisms and their interactions implemented? */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[Media:Avida host-parasite coevolution web.ogv{{Video |2}}]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 603 2012-04-12T17:10:25Z Mfortuna 10 /* How are digital organisms and their interactions implemented? */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 604 2012-04-12T17:13:05Z Mfortuna 10 /* How are digital organisms and their interactions implemented? */ [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 605 2012-04-12T17:13:58Z Mfortuna 10 [[Image:DigiNet_Fig_1.png|400px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 606 2012-04-12T17:14:25Z Mfortuna 10 [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 607 2012-04-12T17:17:35Z Mfortuna 10 "It is hard to realize that the world as we know is just one of many possibilities"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 608 2012-04-12T17:19:29Z Mfortuna 10 "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 609 2012-04-12T17:20:18Z Mfortuna 10 /* Where did the idea originate? */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("What would happen if the tape of the history of life were rewound and replayed?" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 610 2012-04-12T17:20:47Z Mfortuna 10 /* Why use digital ecosystems? */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida. They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 611 2012-04-12T17:22:08Z Mfortuna 10 /* Avida */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see "Digital interactions" for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 612 2012-04-12T17:23:27Z Mfortuna 10 /* Adding ecology */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[Digital interactions]] for examples). =How are digital organisms and their interactions implemented?= [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 613 2012-04-12T17:24:31Z Mfortuna 10 /* How are digital organisms and their interactions implemented? */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[Digital interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 614 2012-04-12T17:24:45Z Mfortuna 10 /* Adding ecology */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication ({{See Video|1}}, and the "Digital organisms" section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[Digital interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 615 2012-04-12T17:29:12Z Mfortuna 10 /* What are digital ecological networks? */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Video 1, and the [[Digital organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[Digital interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 ({{See Video |1}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 616 2012-04-12T17:30:00Z Mfortuna 10 /* Digital organisms */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Video 1, and the [[Digital organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[Digital interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Video 1) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms ({{See Video |2}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 617 2012-04-12T17:30:28Z Mfortuna 10 /* Digital interactions */ "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Video 1, and the [[Digital organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[Digital interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Video 1) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see Video 2). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 620 2012-04-12T22:45:13Z Zamanlui 11 Added Author Affiliations '''Miguel Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estacíon Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the world as we know is just one of many possibilities''"[1]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Video 1, and the [[Digital organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[Digital interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Video 1) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see Video 2). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 621 2012-04-12T22:52:06Z Zamanlui 11 adding wiki refs '''Miguel Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estacíon Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the world as we know is just one of many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur [20]. In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions [2-4]. A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection [5], shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation [6-7], or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals [8-9]. Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses [3]. Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires [10]. Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in [11]), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''" [12]). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Video 1, and the [[Digital organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions ({{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''" [13]. ==Coreworld== 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 [14]. Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs [15]. ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others [15]. The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation [16]. Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations [17]. Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[Digital interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Video 1) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations [18]. For a more detailed description of the Avida research platform, see [16]. ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see Video 2). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not? [19] Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 1 Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166. 2. Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477. 3. Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140. 4. Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429. 5. Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118. 6. Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817. 7. Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389. 8. Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928. 9. Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921. 10. Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814. 11. Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377. 12. Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton. 13. Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773. 14. Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3. 15. Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408. 16. Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229. 17. Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885. 18. Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664. 19. Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856. 20. Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209. 622 2012-04-12T23:26:32Z Zamanlui 11 added wiki style citations, and fixed relative links '''Miguel Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estacíon Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the world as we know is just one of many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see Video 1, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |'''Video 1. Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see Video 1) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see Video 2). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px |'''Video 2. 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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 623 2012-04-13T03:00:19Z Zamanlui 11 changed video refs to figures, to fit in with the template created (and to fit better with PLoS publishing) '''Miguel Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estacíon Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the world as we know is just one of many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 625 2012-04-13T09:47:09Z Mfortuna 10 '''Miguel Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the world as we know is just one of many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tom Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 626 2012-04-13T09:53:24Z Mfortuna 10 /* Tierra */ '''Miguel Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the world as we know is just one of many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed interesting evolution, mutations in this early genetic programing language produced many dead organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for increasing the self-replication rate. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started using code for replication from other organisms, allowing those cheaters to shrink further. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers were able to define tasks organisms could perform and the corresponding consequences triggered upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allowed users to collect as much information about evolving populations as was feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 629 2012-04-13T19:12:27Z Zamanlui 11 incorporating a few of Charles's edits '''Miguel Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the world as we know is just one of many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 631 2012-04-14T08:47:02Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the world as we know is just one of many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 632 2012-04-17T00:36:31Z Daniel Mietchen 5 fixed quote '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 894 2012-06-07T01:00:38Z Daniel Mietchen 5 This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]]. '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].''' --[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] Digital ecological networks are webs of interacting, self-replicating, and evolving computer programs (i.e., digital organisms) that experience the same major ecological interactions that biological organisms do (competition, predation, parasitism, and mutualism). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, network formation can be directly observed in real-time by tracking the interactions between constantly evolving phenotypes. These phenotypes may be defined by combinations of logical computations (hereafter tasks) that digital organisms perform, or other traits such as behavior. To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. =References= <references/> 895 2012-06-07T01:23:55Z Daniel Mietchen 5 lead '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> A '''digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:competition|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:mutualism|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:logical computation|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == *[[wp:Digital ecology|Digital ecology]] =References= <references/> 896 2012-06-07T01:41:14Z Daniel Mietchen 5 wikilinks '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =Where did the idea originate?= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == *[[wp:Digital ecology|Digital ecology]] =References= <references/> 897 2012-06-07T01:50:02Z Daniel Mietchen 5 Headings should not contain questions, as per [[wp:MOS:HEAD|MOS:HEAD]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Why use digital ecosystems?= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =History= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == *[[wp:Digital ecology|Digital ecology]] =References= <references/> 898 2012-06-07T01:50:30Z Daniel Mietchen 5 Headings should not contain questions, as per [[wp:MOS:HEAD|MOS:HEAD]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Applications= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =What are digital ecological networks?= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =History= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == *[[wp:Digital ecology|Digital ecology]] =References= <references/> 899 2012-06-07T01:51:03Z Daniel Mietchen 5 Headings should not contain questions, as per [[wp:MOS:HEAD|MOS:HEAD]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Applications= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =Types= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =History= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =How are digital organisms and their interactions implemented?= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == *[[wp:Digital ecology|Digital ecology]] =References= <references/> 900 2012-06-07T01:52:08Z Daniel Mietchen 5 Headings should not contain questions, as per [[wp:MOS:HEAD|MOS:HEAD]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Applications= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =Types= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =History= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =Implementation= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =What can we learn from them?= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == *[[wp:Digital ecology|Digital ecology]] =References= <references/> 901 2012-06-07T01:53:03Z Daniel Mietchen 5 Headings should not contain questions, as per [[wp:MOS:HEAD|MOS:HEAD]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] =Applications= In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. =Types= [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. =History= "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ==Coreworld== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ==Tierra== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ==Avida== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Adding ecology== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). =Implementation= ==Digital organisms== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ==Digital interactions== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. =Research= Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. =Acknowledgments= We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == *[[wp:Digital ecology|Digital ecology]] =References= <references/> 902 2012-06-07T01:57:41Z Daniel Mietchen 5 section headings, as per [[wp:WP:SECTION|WP:SECTION]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Applications== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. ==Types== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == *[[wp:Digital ecology|Digital ecology]] ==References== <references/> 903 2012-06-07T01:59:14Z Daniel Mietchen 5 /* See also */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Applications== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. ==Types== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 904 2012-06-07T02:01:59Z Daniel Mietchen 5 wikilink '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Applications== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. ==Types== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 905 2012-06-07T02:06:45Z Daniel Mietchen 5 /* See also */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> In [[wp:Digital ecology|digital ecology]], an '''evolving digital ecological network''' is a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Applications== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. ==Types== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' *[[wp:Evolving networks|Evolving networks]] ==References== <references/> 906 2012-06-07T02:14:31Z Daniel Mietchen 5 next try at lead '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Applications== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. ==Types== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' *[[wp:Evolving networks|Evolving networks]] ==References== <references/> 916 2012-06-07T02:46:29Z Daniel Mietchen 5 now linked from lead '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Applications== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. ==Types== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 917 2012-06-07T02:50:34Z Daniel Mietchen 5 more common section titles '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 918 2012-06-07T02:53:01Z Daniel Mietchen 5 moving second paragraph from lead to [[#Characteristics]] section '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid from Madagascar whose nectary was a foot long, he surmised that there must be a pollinator moth with a proboscis long enough to reach the nectar at the end of the spur.<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have pollen rubbed off on its head and the next orchid visited would then be pollinated. In 1903, such a moth was discovered. This was a remarkable example of an evolutionary prediction. However, this example of pairwise coevolution is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 919 2012-06-07T03:21:28Z Daniel Mietchen 5 wikilinks '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']])) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a proboscis long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions and we still do not know to what extent the architecture of these networks shapes the coevolutionary process. Can digital life help us understand it?]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 920 2012-06-07T03:23:53Z Daniel Mietchen 5 [[wp:WP:NPOV|WP:NPOV]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']])) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a proboscis long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and it is still not known to what extent the architecture of these networks shapes the coevolutionary process - an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 921 2012-06-07T03:25:58Z Daniel Mietchen 5 ) '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When Darwin received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a proboscis long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and it is still not known to what extent the architecture of these networks shapes the coevolutionary process - an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 922 2012-06-07T03:28:16Z Daniel Mietchen 5 nothing wrong in linking Darwin too... '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a proboscis long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and it is still not known to what extent the architecture of these networks shapes the coevolutionary process - an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 923 2012-06-07T03:29:27Z Daniel Mietchen 5 slight brushing '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a proboscis long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 924 2012-06-07T03:31:27Z Daniel Mietchen 5 link to [[wp:proboscis|proboscis]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]]: a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 925 2012-06-07T03:36:40Z Daniel Mietchen 5 also link to [[wp:Ecological network|ecological networks]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Unfortunately, biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 926 2012-06-07T03:44:50Z Daniel Mietchen 5 neutral phrasing '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. Until now, this question could be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). To date, no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' So far, the well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 927 2012-06-07T03:48:03Z Daniel Mietchen 5 neutral timing '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. This question could long be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section.''''' The well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 928 2012-06-07T03:50:03Z Daniel Mietchen 5 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]].'''<br />--[[User:Daniel Mietchen|Daniel Mietchen]] 18:00, 6 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. This question could long be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section, without duplicating what has been written above.''''' The well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 929 2012-06-07T03:51:10Z Daniel Mietchen 5 still not done with adapting to WP style; will get back to it '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies, as explained in the [[Topic Pages|Topic Page guidelines]] ''' as of 20:51, 6 June 2012 (PDT). </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. This question could long be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section, without duplicating what has been written above.''''' The well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 930 2012-06-07T04:02:04Z Daniel Mietchen 5 slight rephrasing '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 20:51, 6 June 2012 (PDT). </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. This question could long be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section, without duplicating what has been written above.''''' The well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 932 2012-06-08T00:09:24Z Daniel Mietchen 5 '''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --~~~~ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead are part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of food webs, plant-animal mutualistic networks, and host-parasite communities. This question could long be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in phylogenetic signals.<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section, without duplicating what has been written above.''''' The well-known structures of multispecific interactions such as [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]] that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 933 2012-06-08T00:24:24Z Daniel Mietchen 5 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question could long be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are promising empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section, without duplicating what has been written above.''''' The well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. In the last few years, ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 934 2012-06-08T00:25:15Z Daniel Mietchen 5 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the patterns of species interactions.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question could long be addressed only via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> Biological evolution experiments are difficult to carry out because of the long time-scales evolution requires.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with bacteria and viruses are even more difficult (as reviewed in <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>), requiring substantial effort to isolate and quantify small samples of interactions. Additionally, high levels of replication are required for statistical power given the stochastic nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>). No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section, without duplicating what has been written above.''''' The well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the [[wp:Network topology|patterns of links]] among species. Ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 935 2012-06-08T00:46:09Z Daniel Mietchen 5 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref>, or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Biological evolution is difficult to test experimentally because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are even more challenging <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>, requiring substantial effort to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of replication in order to attein [[wp:statistical power|statistical power]]. No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section, without duplicating what has been written above.''''' The well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. Ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. '''''Spare sentences''''' *Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 936 2012-06-08T00:51:32Z Daniel Mietchen 5 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms responsible for the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are even more challenging <ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref>, requiring substantial effort to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of replication in order to attein [[wp:statistical power|statistical power]]. No experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks. However, experiments using digital organisms that evolve ecological networks are empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. '''''This paragraph has been moved here from the original introduction and has to be merged with the remainder of this section, without duplicating what has been written above.''''' The well-known structures of multispecific interactions such as food webs, plant-animal mutualistic networks, and host-parasite communities that have been studied are snapshots of the continuous coevolutionary process that shapes and is shaped by the patterns of links among species. Ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help us understand how selection on one species affects the evolution of links among the other species throughout the web 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. '''''Spare sentences''''' *Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 937 2012-06-08T01:08:39Z Daniel Mietchen 5 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, experiments using digital organisms that evolve ecological networks are empirical tools for understanding and predicting the outcome of the coevolutionary process within ecosystems. Ongoing development of software platforms used to experimentally study evolution has enabled researchers to examine such dynamic ecological interactions. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. '''''Spare sentences''''' *Thus, there is a need for an alternative and experimental framework to test coevolutionary hypotheses.<ref name=webOfLife /> ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 938 2012-06-08T01:22:04Z Daniel Mietchen 5 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] '''''Part of this paragraph was moved to the lead, which may require adaptations in this section.''''' To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 939 2012-06-08T01:26:56Z Daniel Mietchen 5 /* Examples */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}} , and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 940 2012-06-08T01:39:02Z Daniel Mietchen 5 moving quote up '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how coevolution, the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 941 2012-06-08T01:41:04Z Daniel Mietchen 5 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article is currently being edited in order to bring it in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' --[[User:Daniel Mietchen|Daniel Mietchen]] 17:09, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 942 2012-06-08T01:47:49Z Daniel Mietchen 5 still not done with adapting to WP style '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Computational logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 968 2012-06-14T17:59:54Z Zamanlui 11 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>Jacob F (1977) Evolution and tinkering. Science 196: 1161-1166.</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>Maynard-Smith J (1992) Byte-sized evolution. Nature 335: 772-773.</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>Thompson JN (2009) The coevolving web of life. American Naturalist 173: 125-140.</ref><ref>Schoener TW (2011) The newest synthesis: understanding the interplay of evolutionary and ecological dynamics. Science 330: 426-429.</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 969 2012-06-14T18:28:20Z Zamanlui 11 saving progress of adding pmid citations '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>Thompson JN (1999) The evolution of species interactions. Science 284: 2116-2118</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>Yoder JB, Nuismer SL (2010) When does coevolution promote diversification? American Naturalist 176: 802-817.</ref><ref>Gilman RT, Nuismer SL, Jhwueng DC (2012) Coevolution in multidimensional trait space favours escape from parasites and pathogens. Nature 483: 7389.</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>Rezende EL, Lavabre JE, Guimarães PR, Jordano P, Bascompte J (2007) Non-random coextinctions in phylogenetically structured mutualistic networks. Nature 448: 925–928.</ref><ref>Gómez JM, Verdú M, Perfectti F (2010) Ecological interactions are evolutionarily conserved across the entire tree of life. Nature 465: 918-921.</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref> Lenski RE, Travisano M (1994) Dynamics of adaptation and diversification: a 10,000-generation experiment with bacterial populations. Proceedings of the National Academy of Sciences, USA 91: 6808-6814.</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: mergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>Ofria C, Wilke CO (2004) Avida: A software platform for research in computational evolutionary biology. Artificial Life 10: 191-229.</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>Guimarães PR, Jordano P, Thompson JN (2011). Evolution and coevolution in mutualistic networks. Ecology Letters 14: 877-885.</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>Lenski RE, Ofria C, Collier TC, Adami C (1999) Genome complexity, robustness and genetic interactions in digital organisms. Nature 400: 661-664.</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>Thébault E, Fontaine C (2010) Stability of ecological communities and the architecture of mutualistic and trophic networks. Science 329: 853-856.</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 970 2012-06-14T18:41:50Z Zamanlui 11 added all pubmed indexed references using the cite pmid template '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, 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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 972 2012-06-15T08:38:07Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> Pairwise coevolution experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the coevolutionary process within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web 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 [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|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 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 on the the right, five hypothetical host (green) and parasite (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the coevolutionary process: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a modular (left) or nested (right) interaction network can emerge.]] To perform tasks, digital organisms process random binary numbers taken from the environment by executing the set of instructions constituting their genomes, which are susceptible to mutation during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular logic task, then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital predator-prey systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its fitness. ==History== ===Coreworld=== 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.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early genetic programing language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, Tomas S. Ray developed an alternative system, Tierra, and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution 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 ''private'' allocated memory space, thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only selective pressure in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing code for replication from other organisms, allowing those "cheaters" to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, Christoph Adami, Charles Ofria, and C. Titus Brown created the artificial life platform Avida (http://avida.devosoft.org/). They added the ability for digital organisms to obtain bonus CPU cycles for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as insertions and deletions. Initially, all three hardware ''pointers'' are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the offspring, and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 spent 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 at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using individual-based simulations.<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 973 2012-06-15T09:56:05Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algegra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algegra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The Turing complete genetic 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 (see {{See Figure|3}}) into a new region of memory through a potentially noisy channel that may lead to errors (i.e., mutation). While most mutations are detrimental, mutants will occasionally have higher fitness providing natural selection with all the necessary components for Darwinian evolution. Digital organisms can acquire random 32-bit binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction ''nand''. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of antagonistic and mutualistic interactions are already implemented in the Avida software platform. Parasites are implemented just like other self-replicating digital organisms, but they live inside hosts and execute as parasitic threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. Infection occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a community, researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 974 2012-06-15T10:12:19Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algegra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algegra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of infections a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] 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 to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can coevolve a variety of behavioral strategies adapted to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with spatially structured populations. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do coevolutionary dynamics change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as contingent as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do genetic constraints play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the evolutionary history of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how biodiversity is organized in natural ecosystems. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect ''fossil record'' of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 975 2012-06-15T10:31:27Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algegra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algegra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 976 2012-06-15T10:32:50Z Mfortuna 10 /* Digital interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algegra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algegra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 977 2012-06-15T10:33:18Z Mfortuna 10 /* Research */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are a subset of [[wp:Evolving networks|evolving networks]] pertaining to [[wp:Digital ecology|digital ecology]], modeling [[wp:Ecological network|ecological networks]] as a web of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algegra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algegra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 978 2012-06-15T11:30:23Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolutionary computation|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead form part of large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by natural selection<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed theoretically via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Reproducibility|replication]] in order to attein [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given ecosystem. By using self-replicating computer programs (i.e., digital organisms), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algegra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algegra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its phenotype. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and selection favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 989 2012-06-15T20:30:31Z Zamanlui 11 updating and adding a few wikipedia links through Examples. '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 990 2012-06-15T21:51:26Z Zamanlui 11 fixing some hanging brackets '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the BEACON Center, for useful discussions, comments and suggestions that have largely improved the ms. This work was funded by a Marie Curie International Outgoing Fellowship within the 7th European Community Framework Programe (to M.A.F.), an AT&T Research Labs Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the National Science Foundation under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 1000 2012-06-28T01:13:33Z Daniel Mietchen 5 /* Acknowledgments */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]] (http://avida.devosoft.org/) at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 1001 2012-06-28T01:20:57Z Daniel Mietchen 5 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> For a more detailed description of the Avida research platform, see <ref name=wilke /> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 1002 2012-06-28T01:25:32Z Daniel Mietchen 5 Avida reference '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. == See also == ''Please link from here any Wikipedia entries that are relevant to Evolving digital ecological networks but not linked from anywhere in this article yet.'' ==References== <references/> 1003 2012-06-28T01:35:00Z Daniel Mietchen 5 /* See also */ removing this section as long as it is empty '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- <center><BIG>'''This article remains to be brought in line with Wikipedia policies (cf. [[Topic Pages|Topic Page guidelines]]) ''' as of 18:47, 7 June 2012 (PDT) </BIG></center> "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> 1004 2012-06-28T01:36:12Z Daniel Mietchen 5 Wikification now basically OK. Will have to be checked after the revision, though. '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Tomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> 1050 2012-07-03T10:37:39Z Daniel Mietchen 5 /* Tierra */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> 1183 2012-07-06T23:46:57Z Spencer Bliven 1 Added Category:PLoS_Computational_Biology_articles '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology articles]] 1374 2012-07-24T14:23:42Z Daniel Mietchen 5 [[Category:PLoS Computational Biology drafts]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the static fingerprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological evolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1592 2012-09-06T09:28:20Z Mfortuna 10 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot (''sesquipedale'') long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1593 2012-09-06T09:40:16Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within digital ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1594 2012-09-06T09:43:00Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species are not evolving in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1595 2012-09-06T12:22:23Z Mfortuna 10 /* Characteristics */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1602 2012-09-07T10:48:31Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 --- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform, or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Characteristics== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but instead are in large networks of interacting species (see {{See Figure|1}}). One of the main goals in the ecological sciences is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==Examples== [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|2}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] To perform tasks, digital organisms process random [[wp:Boolean algebra|binary numbers]] taken from the environment by executing the set of instructions constituting their [[wp:Genome|genomes]], which are susceptible to [[wp:mutation|mutation]] during the process of self-replication (see {{See Figure|3}}, and the [[#Digital organisms|Digital Organisms]] section for more details). If the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, thus determining its [[wp:phenotype|phenotype]]. Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |2}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. For example, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. In digital [[wp:predation|predator-prey]] systems, different prey species interact with predators, and [[wp:natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. In fact, in each of these examples the interactions an individual, as part of a broader ecological context, faces affects its [[wp:Fitness (biology)|fitness]]. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ===Adding ecology=== [[File:Self-replication.ogv|thumb| 500px |{{Figure|3}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> Thus, it seems reasonable to establish interactions between digital organisms based on phenotypic matching, allowing a wide range of ecological interactions to be implemented (see [[#Digital interactions|Digital Interactions]] for examples). ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The [[wp:Alan Turing|Turing]] complete genetic language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., mutation). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:32-bit|32-bit]] binary values from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> ===Digital interactions=== A variety of [[wp:biological interaction|antagonistic and mutualistic interactions]] are already implemented in the Avida software platform. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks. By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. Using information from the environment, predators and prey can [[wp:coevolution|coevolve]] a variety of behavioral strategies [[wp:adaptation|adapted]] to the network of interactions they face. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite coevolution is often done in well-mixed environments, though it is not restricted to them. ==Research== Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have largely improved the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1603 2012-09-07T10:49:30Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, determines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1604 2012-09-07T10:52:05Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, determines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1605 2012-09-07T10:56:28Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|3}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, determines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1606 2012-09-07T11:05:40Z Mfortuna 10 /* Digital organisms */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, determines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1607 2012-09-07T11:08:07Z Mfortuna 10 /* Digital organisms */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, determines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1608 2012-09-07T11:09:52Z Mfortuna 10 /* Digital organisms */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:inserction (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1609 2012-09-07T11:11:39Z Mfortuna 10 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletions (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1610 2012-09-07T11:14:01Z Mfortuna 10 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''Self-replication of a digital organism.''' The circular genome of a digital organism 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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1611 2012-09-07T11:15:20Z Mfortuna 10 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written. Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1612 2012-09-07T11:39:02Z Mfortuna 10 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level and trait complementarity in interacting partners have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1613 2012-09-07T11:44:58Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1614 2012-09-07T11:45:53Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1615 2012-09-07T11:55:20Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> This means that digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since they the former will benefit from the digital organisms labeled as pollinators that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1616 2012-09-07T11:57:18Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life platform, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since they the former will benefit from the digital organisms labeled as pollinators that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1617 2012-09-07T11:59:10Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1618 2012-09-07T12:14:36Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1619 2012-09-07T12:15:47Z Mfortuna 10 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:Natural selection|selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1620 2012-09-07T12:16:58Z Mfortuna 10 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algegra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1621 2012-09-07T12:20:01Z Mfortuna 10 /* Digital interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented. Above, each column depicts a phenotype and each row represents a task. Tasks performed by each phenotype are filled. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented above. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. Depending on the pattern of tasks performed by digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1622 2012-09-07T12:28:31Z Mfortuna 10 /* Digital interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented as rows and columns (above) 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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. The order of tasks follows the time needed for a digital organism to be able to perform it over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1623 2012-09-07T12:29:52Z Mfortuna 10 /* Digital interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|parasite]] (red) phenotypes are represented as columns (above) 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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. The order of tasks follows the time needed for a digital organism to be able to perform it over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1624 2012-09-07T12:30:16Z Mfortuna 10 /* Digital interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|coevolutionary process]]: from the earliest phenotype to the most recent one. The order of tasks follows the time needed for a digital organism to be able to perform it over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1625 2012-09-07T12:32:49Z Mfortuna 10 /* Digital interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform it over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1626 2012-09-07T12:35:37Z Mfortuna 10 /* Digital interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the proportion of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the proportion of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1627 2012-09-07T12:42:02Z Mfortuna 10 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1630 2012-09-17T09:10:57Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from the hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1631 2012-09-17T09:12:30Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, the organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1632 2012-09-17T09:15:33Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, both interacting organisms obtain extra CPU cycles, thus speeding up the self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1633 2012-09-17T09:16:13Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of stealing CPU cycles from the host, both interacting organisms obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1634 2012-09-17T09:19:53Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of one organism living inside the other stealing its CPU cycles, both organisms obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1635 2012-09-17T09:21:11Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of one organism living inside the other stealing its CPU cycles, both organisms obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1636 2012-09-17T09:25:34Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and they both obtain extra CPU cycles if interact, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1637 2012-09-17T09:27:47Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. If they interact, both obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1638 2012-09-17T09:28:38Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. If they interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life sytems, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1639 2012-09-17T09:30:10Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. If they interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the digital organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1640 2012-09-17T09:38:14Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). If they interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1641 2012-09-17T09:39:39Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism works in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1642 2012-09-17T09:40:53Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as pollinators that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1643 2012-09-17T09:41:51Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1644 2012-09-17T09:50:47Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1645 2012-09-17T10:00:18Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In host-parasite interactions one organism, the parasite, benefits at expenses of the other, the host. [[wp:parasitism|Parasites]] are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1646 2012-09-17T10:01:32Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1647 2012-09-17T10:02:54Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in a [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of coevolving digital organisms (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1648 2012-09-17T11:55:28Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1649 2012-09-17T13:01:11Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of [[wp:coevolution|coevolving interactions]] without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1650 2012-09-17T23:31:15Z Daniel Mietchen 5 already linked above '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{ See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1651 2012-09-17T23:32:30Z Daniel Mietchen 5 space '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks ({{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1652 2012-09-17T23:34:26Z Daniel Mietchen 5 cf. '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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. Below, we illustrate the interaction networks between hosts and parasites resulting from phenotypic matching: a parasite infects a host (indicated by a line) if it performs at least one task that it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1653 2012-09-17T23:36:52Z Daniel Mietchen 5 avoid "we" '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1654 2012-09-17T23:37:38Z Daniel Mietchen 5 comma '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors where selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1655 2012-09-17T23:38:40Z Daniel Mietchen 5 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 it is also performed by the host. Inset numbers indicate the identity of phenotypes represented on the top. Arrows represent the temporal direction of the [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1656 2012-09-17T23:40:43Z Daniel Mietchen 5 redundant '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents providing [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1657 2012-09-17T23:41:55Z Daniel Mietchen 5 /* Digital organisms */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1658 2012-09-17T23:43:44Z Daniel Mietchen 5 comma '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1659 2012-09-17T23:44:23Z Daniel Mietchen 5 comma '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available at: http://avida-ed.msu.edu.]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1660 2012-09-17T23:52:51Z Daniel Mietchen 5 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which can be download for free.<ref>[http://avida-ed.msu.edu Avida Homepage] ([http://www.webcitation.org/6AkzDyqUJ Webcitation copy]).</ref>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1661 2012-09-17T23:53:32Z Daniel Mietchen 5 tense '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which can be downloaded for free.<ref>[http://avida-ed.msu.edu Avida Homepage] ([http://www.webcitation.org/6AkzDyqUJ Webcitation copy]).</ref>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available at: http://pajek.imfm.si/doku.php.]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1662 2012-09-17T23:55:53Z Daniel Mietchen 5 ref '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which can be downloaded for free.<ref>[http://avida-ed.msu.edu Avida Homepage] ([http://www.webcitation.org/6AkzDyqUJ Webcitation copy]).</ref>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which can be downloaded for free.<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage]([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1663 2012-09-17T23:56:57Z Daniel Mietchen 5 space '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which can be downloaded for free.<ref>[http://avida-ed.msu.edu Avida Homepage] ([http://www.webcitation.org/6AkzDyqUJ Webcitation copy]).</ref>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which can be downloaded for free.<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1664 2012-09-18T00:04:01Z Daniel Mietchen 5 merge two refs of the same source '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which can be downloaded for free.<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1665 2012-09-18T00:04:42Z Daniel Mietchen 5 redundant '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which can be downloaded for free.<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1666 2012-09-18T00:10:17Z Daniel Mietchen 5 licensse '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent [[wp:coevolution|coevolutionary dynamics]]. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the terms of the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1667 2012-09-18T00:11:50Z Daniel Mietchen 5 already linked above '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depict the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the terms of the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1668 2012-09-18T00:12:42Z Daniel Mietchen 5 typo '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the terms of the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1669 2012-09-18T00:13:40Z Daniel Mietchen 5 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes asymmetry between the thicknesses of arrow-pairs lead to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the terms of the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1670 2012-09-18T00:14:23Z Daniel Mietchen 5 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the terms of the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1671 2012-09-18T00:15:37Z Daniel Mietchen 5 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== We need to go further than traditional approaches of studying only pairs of interacting species if we want to understand how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]]. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1672 2012-09-18T00:18:25Z Daniel Mietchen 5 rephrased to avoid "we" '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (cf. {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the task is not performed) matched by a host resistance gene (the task is performed) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack (by performing tasks). Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1674 2012-09-18T12:52:03Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite networks since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1677 2012-09-18T12:56:59Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite networks since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1679 2012-09-18T12:57:42Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their [[wp:ecological networks|ecological networks]], the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1686 2012-09-19T09:45:38Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1687 2012-09-20T09:23:02Z Mfortuna 10 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab [http://devolab.msu.edu/] at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1688 2012-09-20T09:28:44Z Mfortuna 10 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1689 2012-09-20T09:30:09Z Mfortuna 10 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. Some open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1690 2012-09-20T11:09:34Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction network of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of host-parasite interactions results from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently, the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem. Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1691 2012-09-20T11:23:10Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Mutualistic interactions are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space and is labeled as a plant or as an animal depending on the label of its parent (which was determined at the beginning of the experiment by the two initial ancestors, one plant and one animal). Could we explain that the distiction between the two sets of digital organisms (for example, plants and pollinators) can be made from the beginning by using the "resources" in the "environment file"? LUIS. If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Phenotypic convergence in species within the same trophic level (for example, within plants) and trait complementarity in interacting partners (for example, between plants and pollinators) have been recently identified as the outcome of the coevolutionary process in biological mutualistic networks using [[wp:Agent-based model|individual-based simulations]].<ref>{{cite pmid| 21749596 }}</ref> If the same mechanism is expected to work in this artificial life system, then digital organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently, the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem. Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1692 2012-09-20T11:30:54Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (for a given task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? LUIS.''' If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently, the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem. Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1693 2012-09-20T12:10:31Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see ...) By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Agrawal & Lively, "Infection genetics: gene-for-gene versus matching-alleles models an all points in between", 2002). Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? LUIS.''' If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently, the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem. Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1694 2012-09-20T12:16:02Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among neutral processes driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) Please Luis, add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? LUIS.''' If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently, the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem. Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1695 2012-09-20T12:18:52Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? LUIS.''' If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently, the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem. Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1696 2012-09-20T12:20:34Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? LUIS.''' If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently, the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem. Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1697 2012-09-20T12:21:34Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? LUIS.''' If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently, the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem. Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1698 2012-09-20T12:26:14Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? LUIS.''' If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1699 2012-09-20T12:26:53Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? LUIS.''' If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1700 2012-09-20T15:25:54Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''' Could we explain that the distiction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1701 2012-09-20T15:27:01Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between plants that are pollinated or dispersed by those animals feeding on their nectar, pollen, or fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1702 2012-09-20T16:49:46Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, shapes the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1703 2012-09-21T09:57:58Z Mfortuna 10 /* Motivation */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]] (Janzen, 1980), the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution suggests that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. ''' Please Luis''', add this reference to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1704 2012-09-21T09:58:56Z Mfortuna 10 /* Motivation */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]] (Janzen, 1980), the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution suggests that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. '''Please Luis''', add this reference to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1705 2012-09-21T10:02:16Z Mfortuna 10 /* Motivation */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Network topology|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]] (Janzen, 1980), the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution suggests that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. Please Luis, add this reference to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1706 2012-09-21T10:20:44Z Mfortuna 10 /* Motivation */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]] (Janzen, 1980), the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution suggests that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. Please Luis, add this reference to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. This question can be addressed [[wp:theoretical ecology|theoretically]] via mathematical modeling and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1707 2012-09-21T10:37:52Z Mfortuna 10 /* Motivation */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Motivation== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and [[wp:simulation|simulation]]<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. '''Please Luis''', add this reference to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1708 2012-09-21T10:59:14Z Mfortuna 10 /* Motivation */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and [[wp:simulation|simulation]]<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions without the limitations evolutionary biologists typically face. The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. Evolving digital organisms within ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. '''Please Luis''', add this reference to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1709 2012-09-21T12:25:43Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and [[wp:simulation|simulation]]<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. To our knowledge, the metaanalysis of host-phage interactions across a broad spectrum of taxa, habitat and mode selection, carried out by Weitz and his team (Flores et al., 2011) encapsulates what it has mainly been done in laboratory experiments on ecological interactions in a community context. This is the first step towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms. The nested structure detected in those host-phage interaction networks suggests the existence of diversifying coevolutionary-induced selection that shapes host-phage communities This topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host–phage interactions. Proceedings of the National Academy of Sciences USA, 108:11309-11310. without the limitations evolutionary biologists typically face The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions in a community context. That is, these evolving digital organisms embeeded within complex ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1710 2012-09-21T12:30:18Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and [[wp:simulation|simulation]]<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> or by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]].<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> Experimentally, biological coevolution is difficult to test because of the long time scales involved.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. To our knowledge, the metaanalysis of host-phage interactions across a broad spectrum of taxa, habitat and mode selection, carried out by Weitz and his team (Flores et al., 2011) encapsulates what it has mainly been done in laboratory experiments on ecological interactions in a community context. This is the first step towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms. The nested structure detected in those host-phage interaction networks suggests the existence of diversifying coevolutionary-induced selection that shapes host-phage communities This topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host–phage interactions. Proceedings of the National Academy of Sciences USA, 108:11309-11310. studying the evolution of species interaction networks in artificial evolving systems. without the limitations evolutionary biologists typically face The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions in a community context. That is, these evolving digital organisms embeeded within complex ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1712 2012-09-21T14:32:18Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of evolutionary history that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]],<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laborarory. In spite of the long time scales involved, testing biological evolution in the lab has been successfully accomplished in the las two decades.<ref>{{cite pmid| 8041701 }}</ref> [[wp:pairwise coevolution|Pairwise coevolution]] experiments with [[wp:bacteria|bacteria]] and [[wp:virus|viruses]] are particularly challenging<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> due to the substantial effort that is necessary to isolate and quantify small samples of interactions. Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. To our knowledge, the metaanalysis of host-phage interactions across a broad spectrum of taxa, habitat and mode selection, carried out by Weitz and his team (Flores et al., 2011) encapsulates what it has mainly been done in laboratory experiments on ecological interactions in a community context. This is the first step towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms. The nested structure detected in those host-phage interaction networks suggests the existence of diversifying coevolutionary-induced selection that shapes host-phage communities This topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host–phage interactions. Proceedings of the National Academy of Sciences USA, 108:11309-11310. studying the evolution of species interaction networks in artificial evolving systems. without the limitations evolutionary biologists typically face The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions in a community context. That is, these evolving digital organisms embeeded within complex ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1713 2012-09-21T15:04:52Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]],<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Additionally, the [[wp:stochastic|stochastic]] nature of the evolutionary process ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. This topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host–phage interactions. Proceedings of the National Academy of Sciences USA, 108:11309-11310. studying the evolution of species interaction networks in artificial evolving systems. without the limitations evolutionary biologists typically face The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions in a community context. That is, these evolving digital organisms embeeded within complex ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1719 2012-09-21T15:41:43Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]],<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. This topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host–phage interactions. Proceedings of the National Academy of Sciences USA, 108:11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage Lambda. Science, 335:428-432. studying the evolution of species interaction networks in artificial evolving systems. without the limitations evolutionary biologists typically face The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions in a community context. That is, these evolving digital organisms embeeded within complex ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1726 2012-09-21T21:35:03Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species.[5] As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today, such as in [[wp:phylogenetics|phylogenetic signals]],<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. While no experimental study has used biological organisms to explore coevolutionary dynamics in complex interaction networks, evolving digital ecological networks can serve as empirical tools for studying dynamic ecological interactions and for understanding and predicting the outcome of the [[wp:coevolution|coevolutionary process]] within a given [[wp:Ecosystem|ecosystem]]. This topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1980). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host–phage interactions. Proceedings of the National Academy of Sciences USA, 108:11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage Lambda. Science, 335:428-432. studying the evolution of species interaction networks in artificial evolving systems. without the limitations evolutionary biologists typically face The resulting digital ecological networks create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can explore the emergence and diversification of coevolving interactions in a community context. That is, these evolving digital organisms embeeded within complex ecological networks can help to elucidate how selection on one species affects the evolution of links among the other species throughout the web and, in turn, how changes in the overall structure of the web (e.g., through extinction of taxa or the introduction of [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1727 2012-09-21T21:37:09Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 emerge from the coevolutionary process. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1728 2012-09-22T00:57:07Z Daniel Mietchen 5 typo '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are completely lacking for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1780 2012-09-22T09:02:50Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1781 2012-09-22T09:08:13Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add this reference to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1782 2012-09-22T09:17:12Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add this reference to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1783 2012-09-22T09:21:16Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1788 2012-09-22T12:28:34Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Introduction== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1789 2012-09-22T12:31:35Z Mfortuna 10 /* Introduction */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1790 2012-09-22T12:33:37Z Mfortuna 10 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1791 2012-09-22T12:34:08Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. There is no reason to expect a priori that multispecific interactions prevent coevolution. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. But the important thing to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts not only on individual species but also on the larger structure (i.e., topology) of webs of interacting species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, testing biological evolution in the lab has been successfully accomplished in the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of species interactions has been, however, a much more difficult task when dealing with webs of interacting species. Recently, the metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Weitz and his team (Flores et al., 2011), encapsulates what it has mainly been done in laboratory experiments to explore coevolving interactions in a community context. This is one of the first steps towards investigating experimentally the interplay between evolutionary processes and network structure with biological organisms.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) have shown that the 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 his host. The advent of digital organisms open the doors to experiments much more akin to ''replying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement the experiments with microbes performed in the lab in searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of this field without the limitations evolutionary biologists typically face. Therefore, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the concept of evolving digital ecological networks will create opportunities for the communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1823 2012-09-27T10:44:39Z Mfortuna 10 /* Inspiration */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. Using Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1824 2012-09-27T10:45:27Z Mfortuna 10 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language including the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1825 2012-09-27T10:46:55Z Mfortuna 10 /* Digital organisms */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at expenses of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organims to have larger genomes and hence longer copy times. Besides this specific way for a host to be infected by a parasite, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks will result from the interplay among [[wp:Molecular evolution|neutral processes]] driven mainly by host availability and coevolutionary dynamics, with leads to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1826 2012-09-27T10:50:17Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations. Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1827 2012-09-27T10:51:51Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact to each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they both are able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform common tasks to those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1828 2012-09-27T10:54:27Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the lost of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer, and is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. Unfortunately, these and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation, but those data are very difficult to get for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological evolution and the digital one, we believe that the study of evolving digital ecological networks will complement, as an empirical tool, recent laboratory studies dealing with microbes communities. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1829 2012-09-27T10:59:46Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may not lead to the major macroevolutionary changes leading to the formation of new species. Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1830 2012-09-27T11:06:36Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] that [[wp:biological organism|biological organisms]] do ([[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way: starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform. Interactions between them are determined by task-based phenotypes or other traits such as [[wp:behavior (biology)|behavior]]. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1846 2012-10-02T17:31:51Z Zamanlui 11 touched up introduction paragraph '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1847 2012-10-02T17:32:35Z Zamanlui 11 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, are shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution (Janzen, 1980) has been generally missinterpreted to suggest that species are faced with too many conflicting pressures in their interactions with other species for natural selection to favour coevolutionary responses to individual enemy or mutualist species. However, there is no reason to expect a priori that multispecific interactions prevent coevolution. The important dynamic to understand is how species coevolve in the midst of interactions with multiple other species. As John N. Thompson argues, this is not a return to diffuse coevolution. It is the opposite[5]. It is a focus on how reciprocal selection acts on the larger structure (i.e., topology) of webs of interacting species, not only on individual species. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory. In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The metaanalysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa, habitat and mode selection carried out by Flores and his team (Flores et al., 2011), encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquire ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab (Meyer et al. 2012) 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 their host. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. Accordingly, this topic page highlights a new usage of digital evolution: the evolution of antagonistic and mutualistic interactions between digital organisms. Since the emergence and diversification of coevolving interactions in a community context is very difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. We believe that the approach of evolving digital ecological networks will create opportunities for enhanced communication and cross-talk between computer scientists and evolutionary biologists. '''Please Luis''', add these references to the list: Janzen, D. H. (1990). When is it coevolution? Evolution, 34: 611-612. Flores, C. O., Meyer, J. R., Valverde, S., Farr, L., and Weitz, J. S. (2011). Statistical structure of host-phage interactions. Proceedings of the National Academy of Sciences USA, 108: 11309-11310. Meyer, J. R., Dobias, D. T., Weitz, J. S., Barrick, J. E., Quick, R. T., and Lenski, R. E. (2012). Repeatability and contingency in the evolution of a key innovation in phage lambda. Science, 335: 428-432. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1848 2012-10-02T18:00:45Z Zamanlui 11 some edits for reviewers and some citations for miguel '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref>. A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species[5]. The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> . In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades<ref>{{cite pmid| 8041701 }}</ref>. Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host<ref>{{cite pmid|22282803}}</ref>. The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1849 2012-10-02T18:04:23Z Zamanlui 11 moving citations after period, updating citation to Thompson's paper '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== Thomas S. Ray created a genetic language similar to earlier digital evolution systems, but added several key features that made it more suitable for evolution in his [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computation tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues the development of the Avida digital evolution research platform. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1850 2012-10-02T19:35:38Z Zamanlui 11 some wording in history section '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''nand'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref>. That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of all logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1851 2012-10-02T19:42:58Z Zamanlui 11 small punctuation and word edits '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations.<ref>{{cite pmid| 10458160 }}</ref> That is, if the output from processing those numbers corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of logical tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1852 2012-10-02T19:46:54Z Zamanlui 11 added universal reference to NAND '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1853 2012-10-02T19:49:12Z Zamanlui 11 /* Digital organisms */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutation]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1854 2012-10-02T20:20:02Z Zamanlui 11 /* Digital organisms */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|host-parasite interactions]] one organism, the parasite, benefits at the expense of the other, the host. Parasites are implemented in Avida just like other self-replicating digital organisms, but they live inside [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the [[wp:Gene-for-gene relationship|gene-for-gene model]] where resistance occurs if there is at least one parasite avirulence gene (the parasite does not perform a task) matched by a host resistance gene (the host perform that task) at a given locus (task). In gene-for-gene models host resistance and pathogen infectivity have associated costs that increase with the level of investment in defense or attack. Such costs of resistance have long been an important part of the theory of why defense genes do not always become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. In addition of this mechanism, other different infection mechanisms can be implemented following, for example, matching-allele and inverse-gene-for-gene models (see Agraval and Lively, 2002; Fenton et al. 2009). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay of [[wp:Molecular evolution|neutral processes]], driven mainly by host availability and coevolutionary dynamics, with lead to host specificity (Poulin, 2010) '''Please Luis''', add these references to the list: Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90. Fenton, A., Antonovics, J., and Brockhurst, M. A. (2009). Inverse-gene-for-gene infection genetics and coevolutionary dynamics. American Naturalist, 174: E230-E242. Poulin, R. (2010). Network analysis shining light on parasite ecology and diversity. Trends in Parasitology 26: 492-498. [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1857 2012-10-03T19:11:33Z Zamanlui 11 References, and a bit of editing, inverse-gfg instead of gfg for avida interaction mechanism '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior: predators are digital organisms that have evolved from ancestral prey to locate, attack, and consume prey. When a digital organism executes an attack instruction (acquired through mutation), it can kill neighboring organisms. When predators kill prey, they gain resources required for reproduction (e.g., CPU cycles) proportional to that which the consumed prey had accumulated. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors, whose selective forces are constantly changing. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though it is not restricted to them. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1858 2012-10-03T19:34:05Z Zamanlui 11 small copy editing '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators and birds and fleshy fruits, are implemented following the same task matching mechanism but, instead of having one organism living inside the other and stealing its CPU cycles, each organism lives in its own memory space. An initial distinction between organisms is made at the beginning of the experiment: two initial ancestors, one labeled as ''plant'' and the other as ''animal'', will determine the identity of their offspring as plants or as animals, respectively. '''Luis''', could we explain that the distinction between the two sets of digital organisms (for example, plants and animals) can be made from the beginning by using the "resources" in the "environment file"? If a plant and an animal interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. That is, two digital organisms can obtain mutual benefit if they are both able to perform at least one common task: the higher the number of common tasks, the higher the mutual benefit. Individual-based simulations have recently shown that phenotypic convergence in species within the same trophic level (for example, long nectar chambers) and trait complementarity in interacting partners (for example, long proboscis of pollinators for reaching the nectar of the plants) is the outcome of the coevolutionary process <ref>{{cite pmid| 21749596 }}</ref>. If the same mechanism is expected to work in the evolving networks of digital organisms, then organisms labeled as plants will tend to perform tasks common with those carried out by other plants, since the former will benefit from the organisms labeled as animals that interact with the later. ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1859 2012-10-03T20:11:02Z Zamanlui 11 reworded mutualistic interactions, Explained more about Avida's flexibility, and reworded the reference to network based predictions and outcomes '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, thus speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1860 2012-10-03T20:13:09Z Zamanlui 11 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. The long diversity-complexity debate tries to understand whether or not more diverse communities enhance the stability of ecological networks. Until recently (Mougi and Kondoh, 2012), the discussion has been focused on one component of biodiversity, species diversity. But a new research line is opened when dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem (Mougi and Kondoh, 2012). Studies with digital organisms can shed light on this debate from an empirical perspective too, since we can combine different types of interactions in the same experiment and quantify the stability and architecture of the resulting evolving digital ecological network. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species as [[wp:contingency (philosophy)|contingent]] as evolution itself? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalized glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. There are potential caveats for translating predictions for evolving digital networks to biological systems. For example, although evolutionary changes occurring at the set of instructions constituting the genome of digital organisms may lead to some major macroevolutionary changes, like the emergence of new phenotypes, it can say little on the formation of new species?? Yet, they contain none the less crucial components of the ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between the biological digital systems, we believe that the study of evolving digital ecological networks will, as an empirical tool, complement recent laboratory studies. Together, they will create opportunities for investigating the interplay between ecological and evolutionary processes in large webs of interacting species. '''Please Luis''', add this reference to the list: Mougi, A. and Kondoh, M. (2012). Diversity of interaction types and ecological community stability. Science, 337: 349-351. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1861 2012-10-03T20:42:15Z Zamanlui 11 copyediting and a bit of rewording with the last paragraph and stability-diversity debate paragraph '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution. The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref>{{cite pmid|19119876}}</ref> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1865 2012-10-04T17:38:06Z Zamanlui 11 Adding citations, fixing duplicate citation. '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.png|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref name=webOfLife/> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.png|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1878 2012-10-05T11:16:31Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|mutualism]]). Despite being computational, these programs evolve quickly in an open-ended way, and starting from only one or two digital organisms, [[wp:Biological network|network]] formation can be directly observed in real-time by tracking the interactions between constantly evolving [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform or particular [[wp:behavior (biology)|behaviors]] that have evolved. Interactions between phenotypes are determined by overlapping task-based phenotypes or by encounters resulting from particular behaviors. [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref name=webOfLife/> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1881 2012-10-05T14:31:44Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half foot long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed off on its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule. Species coevolve within large networks of ecological interactions, and to what extent the architecture of these networks shapes the coevolutionary process is an active research area within evolutionary ecology.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by the [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important unanswered question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change between local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, was the first step towards a unified framework between community ecology and coevolution. However, understanding how the individual interactions in interaction networks influence coevolution and conversely how coevolution influences the overall structure of networks requires an appreciation for how pair-wise interactions change based on their community context as well as diffuse coevolution.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> The focus is now on how reciprocal selection acts on the larger structure (e.g., topology) of webs of interacting species, not only on particular species.<ref name=webOfLife/> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1882 2012-10-05T14:55:40Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> The challenge of studying coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at the ancient footprint of the [[wp:evolutonary history of life|evolutionary history]] that still persists in ecological patterns we observe today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing experiments with [[wp:microorganisms|microorganisms]] in the laboratory.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> In spite of the long time scales involved and the substantial effort that is necessary to isolate and quantify small samples, the latter approach of testing biological evolution in the lab has been successful over the last two decades.<ref>{{cite pmid| 8041701 }}</ref> Studying the evolution of interspecific interactions has been, however, a much more difficult task when dealing with webs of multiple interacting species. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions across a broad spectrum of taxa and habitat carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref> encapsulates efforts in laboratory experiments to explore coevolving interactions in a community context. This work is one of the first steps towards experimental investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1883 2012-10-05T15:04:07Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. The [[wp:stochastic|stochastic]] nature of the evolutionary process exemplified by Stephen Jay Gould inquiry ("''What would happen if the tape of the history of life were rewound and replayed?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) requires high levels of [[wp:Replication (statistics)|replication]] in order to attain [[wp:statistical power|statistical power]]. If we are to predict the outcome of the coevolutionary process within large networks of interacting species we must quantify the role of historical contingency and repeatability in determining the architecture of the web. Studies in the lab 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 their host.<ref>{{cite pmid|22282803}}</ref> The advent of digital organisms open the doors to experiments much more akin to ''replaying the tape of life''. By using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]), researchers can complement laboratory experiments searching for the emergence and diversification of coevolving interactions in complex communities. Studying the evolution of species interaction networks in artificial evolving systems may contribute to the development of the field while avoiding many limitations evolutionary biologists typically face. This topic page emphasizes new research avenues using digital evolution, where ecological interactions can evolve between antagonistic/mutualistic digital organisms. Since the emergence and diversification of coevolving interactions in a community context is difficult to study in nature, the use of self-replicating computer programs can help us understand how coevolution shapes the structure of 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 [[wp:Invasive species|invasive species]]) affect the [[wp:evolution|evolution]] of a given species. Evolving digital ecological networks will create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1884 2012-10-05T15:30:04Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. Research using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]) complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1885 2012-10-05T15:35:35Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs (i.e., [[wp:digital organisms|digital organisms]]) complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''private'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes to reduce the time spent copying instructions during replication. Some individuals even started executing [[wp:source code|code]] for replication from other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] to further shrink their genetic programs. This form of cheating was the first ecological interaction between organisms in artificial life software. Ray's cheaters pre-dated the study of evolving ecological interactions using Tierra-like digital evolution platforms by 20 years. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|Caltech]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|CPU cycles]] for performing computational tasks, like adding two numbers together, which increased their replication rate. In Avida, researchers can define tasks and set the consequences for organisms upon successful calculation.<ref name=wilke>{{cite pmid| 15107231 }}</ref> Since Avida was designed specifically as a scientific tool, it allows users to collect as much information about evolving populations as is feasible. Due to its flexibility and data tracking abilities, Avida has become the most widely used digital system for studying evolution. The Devolab <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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, such as copy mutations that occur when occasionally instructions are copied incorrectly, and instead a randomly chosen instruction is written (as it can be seen in the offspring, on the right). Other mutations can also be implemented such as [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]]. Initially, all three hardware [[wp:pointer (computer programming)|''pointers'']] are in the same location, the ''r'' instruction. As execution begins, the instruction pointer (indicated by an ''i'') advances. The first few instructions allocate space for the [[wp:offspring|offspring]], and move the write-head pointer into that space (indicated by a ''w''). The flow pointer, indicated by an ''f'', is used to move other pointers, such as the instruction pointer, to specified locations. 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 re-enter 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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|CPU cycles]] being spent 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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1886 2012-10-05T16:02:21Z Mfortuna 10 '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic programing language, which includes the logic instruction [[wp:NAND logic|''NAND'']]. With only this logic instruction, digital organisms can compute any other task by stringing together various operations since NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1887 2012-10-05T16:08:32Z Mfortuna 10 /* Digital organisms */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|logic function]], the digital organism is said to have performed that task. The combination of tasks performed by a digital organism defines its phenotype. The center of the figure depicts the output of applying eight [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and on the the right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 be able to perform that task over the course of the evolutionary trajectory. Depending on the pattern of tasks performed by the digital organisms, a [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute as parasitic [[wp:thread (computing)|threads]] using stolen CPU cycles from their hosts. Because parasites impose a cost (stolen CPU cycles) to hosts, there is selection for resistance, and when resistance starts to spread in a population, there is selection for parasites to infect those new resistant hosts. [[wp:infectious disease|Infection]] occurs when both the parasite and host perform at least one overlapping task, and thus a host is resistant to a particular parasite if they don't share any tasks (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref>, where 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). 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 become rapidly fixed within populations.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in the coevolution of digital host-parasite interactions since performing tasks implies digital organisms having larger genomes and hence longer copy times. Tasks can also be used to consume resources from the abiotic environment, and this environment can be carefully manipulated to control the costs or benefits of resistance. Other infection mechanisms can be implemented such as the matching-allele and [[wp:Gene-for-gene relationship|gene-for-gene]] models (see <ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>). By keeping track of task-based phenotypes for both hosts and parasites as well as information about successful infections in the [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). The structure of these networks is a result of the interplay between ecological processes, mainly host abundances, and coevolutionary dynamics, which lead to changes in host specificity.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1888 2012-10-05T16:37:49Z Mfortuna 10 /* Implementation */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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. New nodes representing different host and parasite phenotypes appear and disappear over evolutionary time. The abundance of individuals expressing each phenotype changes continuously (indicated by the size of the nodes) altering the pattern of interactions, and thus influencing the subsequent coevolutionary dynamics. Each interaction between a host phenotype and a parasite phenotype is depicted as two arrows pointing in opposite directions: the thickness of the red arrows depicts the fraction of [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host, while the green arrows depict the fraction of hosts infected by a particular parasite accounted for by the indicated host. Sometimes, asymmetry between the thicknesses of arrow-pairs leads to red arrows dominating the picture: most parasites expressing a given phenotype are infecting a small fraction of hosts expressing a given phenotype, while the majority of those hosts are being infected by parasites with other phenotypes. This animation was generated using Pajek, which is available under the same terms as [[wp:Perl|Perl]], i.e. under the [[wp:Artistic License|Artistic License]] or the [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1889 2012-10-05T16:50:42Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== Interactions in which both species obtain mutual benefit, such as those between flowering plants and pollinators, and birds and fleshy fruits, can be implemented following the same task matching mechanism, but with free-living organisms instead of parasitic threads. One way to setup an interaction similar to plants and pollinators is to have an environment with two mutually exclusive resources: one designated for "plant" organisms and one for "pollinator" organisms. Similar to parasites attempting infection, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1890 2012-10-05T17:04:56Z Mfortuna 10 /* Digital interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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, pollinators attempt to visit a particular plant and success is dependent on the amount of task overlap. If a plant and a pollinator interact with each other, both organims obtain extra CPU cycles, speeding up their self-replication process. Thus, these digital organisms obtain mutual benefit if they are both able to perform at least one common task, and more common tasks produce larger mutual benefits. While this is only one specific mutualistic mechanism, many others are possible in Avida. Interactions that start as parasitic may even evolve to become mutualistic in the right environments. In most cases, coevolution will result in several different phenotypes interacting; thus, the network of mutualistic interactions may be informative to the outcomes and process of coevolution.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1891 2012-10-05T17:15:24Z Mfortuna 10 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|predator-prey]] interactions are determined by behavior. Predators are digital organisms that have evolved from their ancestral prey to locate, attack, and consume contemporary prey 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. [[wp:natural selection|Selection]] favors prey strategies that enable them to avoid being eaten. These interactions create dynamic networks of interacting predator and prey phenotypes based on their differing and continuously evolving behaviors. Thus, selective forces are constantly changing depending on which behaviors are interacting. Because predators and prey use information from their environment and are able to move during their lifetime, these experiments are typically carried out with [[wp:spatial ecology|spatially structured populations]]. On the other hand, host-parasite and mutualistic coevolution are often done in well-mixed environments, though this is not necessary. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1892 2012-10-05T17:21:42Z Mfortuna 10 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. By using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary dynamics embedded within these networks. By tracing the evolution of digital communities and their ecological networks, the researcher obtains a perfect [[wp:fossil|''fossil record'']] of how the number of interacting phenotypes and the pattern of links among them evolve. There is a long-standing debate whether more diverse communities enhance the stability of ecological networks commonly called the stability-diversity debate.<ref>{{cite pmid|10821283}}</ref> Until recently, the discussion has been focused on one component of biodiversity: species diversity. However, research has begun dealing with another component of biodiversity: diversity in species interaction types. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective since the types of interactions included can be experimentally manipulated and the stability of the resulting evolving digital ecological network is measurable. Some other open questions concerning the evolution of ecological networks can be formulated: Do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between species [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structure between species and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones. Mechanistic details differ substantially between interacting digital organisms and interacting organisms in nature. Nevertheless, they contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, we believe that the study of evolving digital ecological networks will help uncover general processes operating on and within biological ecological networks. Together with microbial experiments, they will create opportunities for further investigation into the interplay between ecological and evolutionary processes in large webs of interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1893 2012-10-05T17:41:38Z Mfortuna 10 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1906 2012-10-06T02:14:29Z Zamanlui 11 small wording change '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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 <ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref>. 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1907 2012-10-06T02:16:35Z Zamanlui 11 moved references to after "." '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. This topic page highlights new research avenues enabled by the advent of evolutionary research environments in digital systems. It will help create opportunities for enhanced cross-talk between computer scientists and evolutionary biologists. Research using self-replicating computer programs complements laboratory efforts by broadening the breadth of viable experiments focused on the emergence and diversification of coevolving interactions in complex communities. Digital ecological network research environments 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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 or large networks of interacting species. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1908 2012-10-06T02:35:00Z Zamanlui 11 re-worded the concluding section, moved it to the end instead of between the last 2 paragraphs. '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1909 2012-10-06T02:44:48Z Zamanlui 11 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1910 2012-10-06T02:50:08Z Zamanlui 11 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> Costs are also present in digital host-parasite interactions: performing more or more complex tasks implies larger genomes and hence slower reproduction. Tasks can also enable organisms to consume resources from 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1911 2012-10-06T02:52:00Z Zamanlui 11 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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 larger mutual benefits are obtained with increases in the number of tasks in common. 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1912 2012-10-06T02:56:49Z Zamanlui 11 /* Mutualistic interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 dynamics 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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1913 2012-10-06T03:01:19Z Zamanlui 11 /* Predator-prey interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researcher obtain a perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolve. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse communities enhance the stability of ecological networks. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models show that a mixture of antagonistic and mutualistic interactions can stabilize population dynamics and that the loss of one interaction type may critically destabilize the ecosystem.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules common to, and operating on and within, ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1914 2012-10-06T03:13:17Z Zamanlui 11 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while that of green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1915 2012-10-06T03:14:37Z Zamanlui 11 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while the thickness of the green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1916 2012-10-06T12:31:24Z Mfortuna 10 /* Acknowledgments */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while the thickness of the green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We appreciate very much the positive reviews made by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1917 2012-10-06T12:32:25Z Mfortuna 10 /* Acknowledgments */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|infections]] that a particular parasite is responsible for inflicting on the indicated host phenotype, while the thickness of the green arrows indicate 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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We also appreciate very much the positive reviews made by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1925 2012-10-06T13:05:36Z Mfortuna 10 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We also appreciate very much the positive reviews made by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 1926 2012-10-06T13:18:21Z Mfortuna 10 /* Acknowledgments */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2061 2012-11-28T00:52:24Z Daniel Mietchen 5 +link to [[wp:Evolutionary ecology|evolutionary ecology]] '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in [[wp:Evolutionary ecology|evolutionary ecology]] is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2062 2012-11-28T00:55:06Z Daniel Mietchen 5 already linked from above '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]]<ref>{{cite pmid|10381869}}</ref>, is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref>, 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref>, by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref>, and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team<ref>{{cite pmid|21709225}}</ref>, represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref>, 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2063 2012-11-28T01:00:09Z Daniel Mietchen 5 reference formatting '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2064 2012-11-28T01:03:42Z Daniel Mietchen 5 commas '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2065 2012-11-28T01:05:09Z Daniel Mietchen 5 /* Inspiration */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Inspiration== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2066 2012-11-28T01:08:01Z Daniel Mietchen 5 "Inspiration" is not encyclopaedic enough '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. This topic page highlights new research avenues enabled by the inclusion of ecological interactions in digital systems. Research using self-replicating computer programs complements 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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2067 2012-11-28T01:11:19Z Daniel Mietchen 5 WP articles should not self-reference '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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 <ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2068 2012-11-28T01:14:14Z Daniel Mietchen 5 /* Avida */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2069 2012-11-28T01:19:14Z Daniel Mietchen 5 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. Unfortunately, those data are very difficult to collect for natural systems. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2070 2012-11-28T01:29:56Z Daniel Mietchen 5 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. For natural systems, those data are very difficult to collect. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks will uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering our understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2071 2012-11-28T01:31:57Z Daniel Mietchen 5 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. For natural systems, those data are very difficult to collect. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism, etc.) do not differ, studies utilizing digital networks can uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering the understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2072 2012-11-28T01:32:28Z Daniel Mietchen 5 /* Research directions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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. The meta-analysis of [[wp:bacteriophage|host-phage]] interactions in a broad spectrum of taxa and habitats, carried out by Flores and his team,<ref>{{cite pmid|21709225}}</ref> represents one of the first steps towards experimental laboratory investigation of the interplay between evolutionary processes and network structure in biological systems. 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. For natural systems, those data are very difficult to collect. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism) do not differ, studies utilizing digital networks can uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering the understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2091 2012-12-06T14:22:47Z Zamanlui 11 Added response from DOC file into wiki page '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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 [[wp:bacteriophage|host-phage]] interaction networks, carried out by Weitz and his team,<ref>{{cite pmid|21709225}}</ref> 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]] 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. For natural systems, those data are very difficult to collect. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism) do not differ, studies utilizing digital networks can uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering the understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER (to A.P.W.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2092 2012-12-07T00:56:52Z Zamanlui 11 Added C.O. to funding list, added citation to iCER website and WebCite, and updated Ray's cheaters with parasite reference '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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 [[wp:bacteriophage|host-phage]] interaction networks, carried out by Weitz and his team,<ref>{{cite pmid|21709225}}</ref> 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]], which were originally reffered 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts. 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. For natural systems, those data are very difficult to collect. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism) do not differ, studies utilizing digital networks can uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering the understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER<ref>[http://icer.msu.edu/ Institute for Cyber Enabled Research] ([http://www.webcitation.org/6CijyfTvN WebCite copy)].</ref> (to A.P.W. and C.O.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2093 2012-12-07T01:06:57Z Zamanlui 11 added citation to GECCO parasite paper '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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 [[wp:bacteriophage|host-phage]] interaction networks, carried out by Weitz and his team,<ref>{{cite pmid|21709225}}</ref> 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]], which were originally reffered 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts.<ref>Zaman, L., Devangam, S, and 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.</ref> 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. For natural systems, those data are very difficult to collect. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism) do not differ, studies utilizing digital networks can uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering the understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER<ref>[http://icer.msu.edu/ Institute for Cyber Enabled Research] ([http://www.webcitation.org/6CijyfTvN WebCite copy)].</ref> (to A.P.W. and C.O.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2094 2012-12-07T01:14:10Z Zamanlui 11 /* Host-parasite interactions */ '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>Fussmann GF, Loreau M, Abrams PA (2007) Eco-evolutionary dynamics of communities and ecosystems. Functional Ecology 21: 465-477.</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chigago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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 [[wp:bacteriophage|host-phage]] interaction networks, carried out by Weitz and his team,<ref>{{cite pmid|21709225}}</ref> 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]], which were originally reffered 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts.<ref>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.</ref> 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. For natural systems, those data are very difficult to collect. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism) do not differ, studies utilizing digital networks can uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering the understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER<ref>[http://icer.msu.edu/ Institute for Cyber Enabled Research] ([http://www.webcitation.org/6CijyfTvN WebCite copy)].</ref> (to A.P.W. and C.O.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] 2128 2012-12-11T23:56:44Z Daniel Mietchen 5 fixed references '''Miguel A. Fortuna <sup>1,2</sup>, Luis Zaman<sup>3</sup>, Aaron P. Wagner<sup>3</sup>, Charles Ofria<sup>3</sup>''' <sup>1</sup>Integrative Ecology Group, Estación Biológica de Doñana (EDB-CSIC), C/ Américo Vespucio s/n, 41092, Sevilla, Spain <sup>2</sup>Department of Ecology and Evolutionary Biology, Princeton University, Princeton, NJ, USA, 08544 <sup>3</sup>BEACON Center for the Study of Evolution in Action, Michigan State University, 567 Wilson Road Room 1441 (BPS), East Lansing, MI, USA, 48824 ---- "''It is hard to realize that the living world as we know it is just one among many possibilities''".<ref>{{cite pmid|860134}}</ref> '''Evolving digital ecological networks''' are webs of interacting, [[wp:self-replication|self-replicating]], and [[wp:evolution|evolving]] [[wp:computer program|computer programs]] (i.e., [[wp:digital organism|digital organisms]]) that experience the same major [[wp:ecology|ecological interactions]] as [[wp:biological organism|biological organisms]] (e.g., [[wp:Competition (biology)|competition]], [[wp:predation|predation]], [[wp:parasitism|parasitism]], and [[wp:Mutualism (biology)|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 [[wp:Biological network|networks]] can be observed in real-time by tracking interactions between the constantly evolving organism [[wp:phenotype|phenotypes]]. These phenotypes may be defined by combinations of [[wp:Boolean logic|logical computations]] (hereafter tasks) that digital organisms perform and by expressed [[wp:behavior (biology)|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 [[wp:Evolutionary ecology|evolutionary ecology]] (e.g., the extent to which the architecture of multispecies networks shape coevolutionary outcomes, and the processes involved). [[Image:DigiNet_Fig_1.svg|500px|thumb|{{Figure|1}} '''Pairwise coevolution.''' When [[wp:Charles Darwin|Darwin]] received an orchid ([[wp:Angraecum sesquipedale|''Angraecum sesquipedale'']]) from [[wp:Madagascar|Madagascar]] whose [[wp:nectary|nectary]] was one and a half feet long, he surmised that there must be a [[wp:pollinator|pollinator]] [[wp:moth|moth]] with a [[wp:proboscis|proboscis]] long enough to reach the nectar at the end of the [[wp:Spur (botany)|spur]].<ref>Kritsky G (1991) Darwin's Madagascan Hawk Moth prediction. American Entomologist 37: 206-209.</ref> In its attempt to get the nectar, the moth would have [[wp:pollen|pollen]] rubbed onto its head, and the next orchid visited would then be pollinated. In 1903, such a moth was discovered: [[wp:Xanthopan morgani|''Xanthopan morgani'']]. This was a remarkable example of an evolutionary [[wp:prediction|prediction]]. However, because species coevolve within large networks of multispecies ecological interactions, this example of [[wp:pairwise coevolution|pairwise coevolution]] is more the exception than the rule.]] ==Overview== "''So far, we have been able to study only one evolving system [...] If we want to discover generalizations about evolving systems, we will have to look at artificial ones''".<ref>{{cite pmid|1538757}}</ref> In nature, species do not evolve in isolation but in large networks of interacting species (see {{See Figure|1}}). One of the main goals in evolutionary ecology is to disentangle the evolutionary mechanisms that shape and are shaped by [[wp:Biological interaction|patterns of interaction]] between species.<ref>{{Cite pmid|19414476}}</ref><ref name=webOfLife>{{cite pmid|19119876}}</ref><ref>{{cite pmid|21273479}}</ref> A particularly important question concerns how [[wp:coevolution|coevolution]], the reciprocal evolutionary change in local populations of interacting species driven by [[wp:natural selection|natural selection]],<ref>{{cite pmid|10381869}}</ref> is shaped by the architecture of [[wp:food web|food webs]], plant-animal [[wp:mutualistic network|mutualistic networks]], and [[wp:host-parasite interaction| host-parasite communities]]. The concept of diffuse coevolution, where adaptation is in response to a suite of biotic interactions,<ref>Janzen, D. H. (1990). When is it coevolution? Evolution 34: 611-612.</ref> 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.<ref>Fox, L. R. (1988). Diffuse coevolution within complex communities. Ecology 69: 906-907.</ref><ref> Thompson, J. N. (1994). The coevolutionary process. University of Chicago Press.</ref> 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.<ref name=webOfLife/> Coevolution in a community context can be addressed [[wp:theoretical ecology|theoretically]] via [[wp:mathematical model|mathematical modeling]] and simulation,<ref>{{cite pmid|20950142}}</ref><ref>{{cite pmid|22388815}}</ref> by looking at ancient footprints of [[wp:evolutonary history of life|evolutionary history]] via ecological patterns that persist and are observable today,<ref>{{cite pmid|17713534}}</ref><ref>{{cite pmid| 20520609 }}</ref> and by performing laboratory experiments with [[wp:microorganisms|microorganisms]].<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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.<ref>{{cite pmid| 8041701 }}</ref> 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 [[wp:bacteriophage|host-phage]] interaction networks, carried out by Weitz and his team,<ref>{{cite pmid|21709225}}</ref> 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.<ref>{{cite pmid|22282803}}</ref> Therefore, in order to obtain [[wp:statistical power|statistical power]] for predicting such outcomes of the coevolutionary process, experiments require a high level of replication. This [[wp:stochastic|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?''"<ref>Gould SJ (1990) Wonderful life: the Burgess Shale and the nature of history. W. W. Norton.</ref>) Because of their ease in scalability and [[wp:Replication (statistics)|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. ==History== ===Coreworld=== The field of digital life was inspired by the rampant [[wp:computer virus|computer viruses]] of the 1980s. These viruses were self-replicating computer programs that spread from one computer to another, but they did not evolve. [[wp:Steen Rasmussen|Steen Rasmussen]] was the first to include the possibility of mutation in self-replicating computer programs by extending the once-popular [[wp:Core War|Core War]] game, where programs competed in a digital battle ground for the computer's resources.<ref>Rasmussen S, Knudsen C, Feldberg R, Hindsholm M (1990) The coreworld: emergence and evolution of cooperative structures in a computational chemistry. Physica D 75: 1-3.</ref> Although Rasmussen observed some interesting evolution, mutations in this early [[wp:genetic programming|genetic programing]] language produced many unstable organisms, thus prohibiting scientific experiments. Just one year later, [[wp:Thomas S. Ray|Thomas S. Ray]] developed an alternative system, [[wp:Tierra (computer simulation)|Tierra]], and performed the first successful experiments with evolving populations of self-replicating computer programs.<ref name=Tierra>Ray TS (1992) An approach to the synthesis of life. In Langton CG, Taylor C, Farmer JD, Rasmussen S, editors. Proceedings of Artificial Life II: pp. 371-408.</ref> ===Tierra=== 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 [[wp:Artificial life|artificial life]] system, Tierra. Primarily, he prevented instructions from writing beyond the ''privately'' allocated [[wp:computer memory|memory space]], thus limiting the potential for organisms writing over others.<ref name=Tierra /> The only [[wp:evolutionary pressure|selective pressure]] in Tierra was for rapid self-replication. Over the course of evolution, this pressure lead to shorter and shorter genomes, reducing the time spent copying instructions during replication. Some individuals even started executing the replication [[wp:source code|code]] in other organisms, allowing those [[wp:cheating (biology)|"cheaters"]], which were originally reffered 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. ===Avida=== In 1993, [[wp:Chris Adami|Christoph Adami]], [[wp:Charles Ofria|Charles Ofria]], and C. Titus Brown created the artificial life platform [[wp:Avida|Avida]]<ref name=Avida>[http://avida.devosoft.org/download/ Avida download page] ([http://www.webcitation.org/68kLnHVkF WebCite archive])</ref><ref name=wilke /> at [[wp:Caltech|the California Institute of Technology]]. They added the ability for digital organisms to obtain bonus [[wp:instruction cycle|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.<ref name=wilke>{{cite pmid| 15107231 }}</ref> 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<ref name=Devolab>[http://devolab.msu.edu/ Devolab]</ref> at the [[wp:BEACON Center|BEACON Center]] currently continues development of Avida. [[File:Self-replication.ogv|thumb| 500px |{{Figure|2}} '''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 [[wp:insertion (genetics)|insertions]] and [[wp:deletion (genetics)|deletions]] are also implemented. Initially, all three of the parent's hardware [[wp:pointer (computer programming)|''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 [[wp:offspring|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 [[wp:control flow|execution flow]], showing most of the [[wp:instruction cycle|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 [[wp:Avida|Avida-ED]], which is available under the terms of the [[wp:GNU Lesser General Public License|GNU Lesser General Public License]].<ref name=Avida/>]] ==Implementation== ===Digital organisms=== Digital organisms in Avida are self-replicating computer programs with a genome composed of assembly-like instructions. The genetic programing language in Avida contains instructions for manipulating values in [[wp:processor register|registers]] and [[wp:stack (abstract data type)|stacks]] as well as for [[wp:control flow|control flow]] and mathematical operations. Each digital organism contains [[wp:virtual machine|virtual hardware]] on which its genome is executed. To reproduce, digital organisms must copy their genome instruction by instruction (see {{See Figure|2}}) into a new region of [[wp:computer memory|memory]] through a potentially [[wp:Noisy channel coding theorem|noisy channel]] that may lead to errors (i.e., [[wp:mutation|mutations]]). While most mutations are detrimental, [[wp:mutant|mutants]] will occasionally have higher fitness than their parents, thereby providing the basis for [[wp:natural selection|natural selection]] with all of the necessary components for [[wp:Darwinism|Darwinian evolution]]. Digital organisms can acquire random [[wp:Boolean algebra|binary numbers]] from the environment and are able to manipulate them using their genetic instructions, including the logic instruction [[wp:NAND logic|''NAND'']]. With only this instruction, digital organisms can compute any other task by stringing together various operations because NAND is a universal logic function.<ref>{{cite pmid| 10458160 }}</ref> If the output of processing random numbers from the environment corresponds to the result of a particular [[wp:Boolean algebra|logic task]], then that task is incorporated into the set of tasks the organism performs, which in turn, defines part of its [[wp:phenotype|phenotype]]. ===Digital interactions=== Interactions between digital organisms occur through phenotypic matching, which, in the case of task-based phenotypes, results from the performance of overlapping logic functions (see {{See Figure |3}}). Different mechanisms for mapping phenotypic matching to interactions can be implemented, depending on the antagonistic or mutualistic nature of the interaction. [[Image:DigiNet_Fig_3.svg|500px|thumb|{{Figure|3}} '''Logical computations, i.e. tasks, partially define phenotypes, and phenotypic matching leads to ecological interactions.''' Digital organisms process [[wp:Binary numeral system|binary numbers]] taken from the environment using the instructions that constitute their [[wp:Genome|genomes]]. When the output of processing those numbers equals the result of applying a [[wp:Boolean algebra|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 [[wp:Truth table|logical operators]] (tasks) on the two input numbers above. On the left and right, five hypothetical [[wp: Host (biology)|host]] (green) and [[wp:Parasitism|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 [[wp:coevolution|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 [[wp:modularity|modular]] (left) or [[wp:nestedness|nested]] (right) interaction network can emerge.]] ====Host-parasite interactions==== In [[wp:parasitism|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 [[wp:host (biology)|hosts]] and execute parasitic [[wp:thread (computing)|threads]] using CPU cycles stolen from their hosts.<ref>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.</ref> 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. [[wp:infectious disease|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 (see {{See Figure|3}}). This mechanism of infection mimics the inverse-gene-for-gene model,<ref>{{cite pmid|19852618}}</ref> 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 [[wp:Gene-for-gene relationship|gene-for-gene]] models,<ref>Agrawal, A. and Lively, C. M. (2002). Infection genetics: gene-for-gene versus matching-alleles models an all points in between. Evolutionary Ecology Research, 4: 79-90.</ref> 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.<ref>Bohannan BJM, Lenski RE (2000) Linking genetic change to community evolution: insights from studies of bacteria and bacteriophage. Ecology Letters 3: 362-377.</ref> 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 [[wp:community (ecology)|community]], researchers are able to perfectly reconstruct the interaction networks of digital coevolving hosts and parasites (see {{See Figure|4}}). 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.<ref>{{cite pmid|20561821}}</ref> [[File:Avida host-parasite coevolution web.ogv|thumb| 500px | {{Figure|4}} '''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 out of 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 [[wp:infectious disease|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 [[wp:GNU General Public License|GNU General Public License]].<ref>[http://pajek.imfm.si/doku.php Pajek Wiki Homepage] ([http://www.webcitation.org/6AkzY8IyQ WebCite copy)].</ref>]] ====Mutualistic interactions==== 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 setup 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.<ref>{{cite pmid| 21749596 }}</ref> ====Predator-prey interactions==== While [[wp:host-parasite coevolution|host-parasite]] and [[wp:mutualism (biology)|mutualistic]] interactions are determined by task-based phenotypes, [[wp:predation|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. [[wp:natural selection|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 [[wp:spatial ecology|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. ==Research directions== Understanding how [[wp:biodiversity|biodiversity]] is organized in [[wp:ecosystem|natural ecosystems]] requires going beyond the study of pairs of interacting species. Using digital organisms, one can find generalities about the evolutionary and ecological processes shaping the web of interactions among species, as well as the coevolutionary processes embedded within these networks. By tracing the evolution of digital communities and their ecological networks, researchers obtain perfect [[wp:fossil|''fossil records'']] of how the number and patterns of links among interacting phenotypes evolved. The stability-diversity debate<ref>{{cite pmid|10821283}}</ref> is a long-standing debate about whether more diverse ecological networks are also more stable. Until recently, this debate has focused on one component of biodiversity: species diversity. However, newer research has begun dealing with another component of biodiversity: diversity in species interactions. Mathematical models 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.<ref>{{cite pmid|22822151}}</ref> Studies with digital organisms can shed light on this debate from an empirical perspective because the types of interactions included can be manipulated and the stability of the resulting evolving digital ecological network can be measured. Equally addressable using evolving digital ecological networks are many of the open questions concerning the coevolution of ecological interactions in multispecies communities. For example, do [[wp:coevolution|coevolutionary dynamics]] change as communities become richer? Is there any limit to their richness? Is the evolution of interactions between multispecies networks [[wp:contingency (philosophy)|historically contingent]]? Why do some ecological scenarios lead to predictable network structures and others do not?<ref>{{cite pmid| 20705861 }}</ref> Do [[wp:adaptationism#Genetic_Constraints|genetic constraints]] play a large role in the evolution of ecological networks? These are only a few of many open questions concerning the coevolution of ecological interactions in multispecies communities. These and many related questions require researchers to look across the [[wp:evolutionary history of life|evolutionary history]] of ecological network formation. For natural systems, those data are very difficult to collect. With digital organisms, watching both the coevolutionary process and ecological network formation is possible in real time. Data on the abundance of interacting phenotypes are recorded without error, hence the evolutionary implications of ecological processes can be explored in-depth. The study of self-replicating and evolving computer programs offers a tantalizing glimpse into the evolution of interactions among organisms that do not share any ancestry with biochemical life of Earth. This comes with potential caveats in translating predictions of evolving digital networks to biological ones because mechanistic details differ substantially between interacting digital organisms and interacting biological organisms. Nevertheless, these digital networks contain the necessary components for ongoing coevolutionary dynamics in large webs of interacting organisms. In spite of the differences between biological and digital evolution, the study of evolving digital ecological networks can lead to a more predictive understanding of natural dynamics. Because the general operational processes (e.g., Darwinian evolution, mutualism, parasitism) do not differ, studies utilizing digital networks can uncover rules operating on and within ecological networks. Together with microbial experiments, they create opportunities for furthering the understanding of the interplay between ecological and evolutionary processes among interacting species. ==Acknowledgments== We thank Simon A. Levin, Jordi Bascompte, Justin Meyer and other members of the [[wp:BEACON Center|BEACON Center]], for useful discussions, comments and suggestions that have contributed to the initial development of the manuscript. We very much appreciate the thoughtful and constructive evaluations by Joshua Weitz and Chris Adami that have improved the clarity and readability of this topic page. This work was funded by a [[wp:Marie Curie Actions|Marie Curie International Outgoing Fellowship]] within the [[wp:Seventh Framework Programme|European Commission's 7th Framework Programme]] (to M.A.F.), an [[wp:AT&T Labs|AT&T Research Labs]] Fellowship (to L.Z.), and funding from the BEACON Center and iCER<ref>[http://icer.msu.edu/ Institute for Cyber Enabled Research] ([http://www.webcitation.org/6CijyfTvN WebCite copy)].</ref> (to A.P.W. and C.O.). This material is based in part upon work supported by the [[wp:National Science Foundation|National Science Foundation]] under Cooperative Agreement No. DBI-0939454. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. ==References== <references/> [[Category:PLoS Computational Biology drafts]] Template:Cite pmid 55 373 2012-01-24T23:20:19Z Spencer Bliven 1 Wrapper for Pubmed citations {{#if: {{{1|}}}|<pubmed>{{{1}}}</pubmed>|<strong class="error">No PMID specified</strong>}} 374 2012-01-24T23:29:59Z Spencer Bliven 1 {{#if: {{{1|}}}|pubmed {{{1}}}|<strong class="error">No PMID specified</strong>}} 375 2012-01-24T23:39:23Z Spencer Bliven 1 Trying some things to keep the pubmed parser from parsing the template prematurely {{#if: {{{1|}}}|<nowiki><pubmed>{{{1}}}</pubmed></nowiki>|<strong class="error">No PMID specified</strong>}} 376 2012-01-24T23:41:20Z Spencer Bliven 1 {{#if: {{{1|}}}|{{tag|pubmed}}{{{1}}}{{tag|/pubmed}}|<strong class="error">No PMID specified</strong>}} 378 2012-01-25T00:04:04Z Spencer Bliven 1 <includeonly>{{#if: {{{1|}}}|{{#tag:pubmed|{{{1}}}}}|<strong class="error">No PMID specified</strong>}}</includeonly><noinclude>{{Cite pmid|16592676}} </noinclude> 379 2012-01-25T00:20:45Z Spencer Bliven 1 Added optional layoutfile parameter <includeonly>{{#if: {{{1|}}}|{{#if: {{{layoutfile|}}}|{{#tag:pubmed|{{{1}}}|layoutfile={{{layoutfile}}}}}|{{#tag:pubmed|{{{1}}}}}}}|<strong class="error">No PMID specified</strong>}}</includeonly><noinclude>{{Cite pmid|16592676}} </noinclude> Template:Figure 53 334 2012-01-24T00:11:44Z Spencer Bliven 1 Created page with "'''<span id={{#if {{{2|}}}|{{{2}}}|fig{{{1|}}} }}Figure {{{1|?}}}.'''" '''<span id={{#if {{{2|}}}|{{{2}}}|fig{{{1|}}} }}Figure {{{1|?}}}.''' 335 2012-01-24T00:12:11Z Spencer Bliven 1 '''<span id={{#if {{{2|}}}|{{{2}}}|fig{{{1|}}} }}>Figure {{{1|?}}}.</span>''' 354 2012-01-24T01:11:04Z Spencer Bliven 1 '''<span id="fig{{{1|}}}">Figure {{{1|?}}}.</span>''' 370 2012-01-24T01:47:53Z Spencer Bliven 1 '''<span id="fig{{{1|}}}">{{#if: {{{2|}}}|{{{2}}}|Figure {{{1|?}}}}}.</span>''' Template:See Figure 54 337 2012-01-24T00:22:54Z Spencer Bliven 1 Created page with "{{#if hi | true | false }}" {{#if hi | true | false }} 338 2012-01-24T00:27:04Z Spencer Bliven 1 {{#ifexpr {{{1}}} }} <noinclude>{{User:Spencer_Bliven/Figures}}</noinclude> 339 2012-01-24T00:30:52Z Spencer Bliven 1 figure {{#ifexpr {{{1|X}}}|NUMBER|ID }} 340 2012-01-24T00:31:29Z Spencer Bliven 1 figure {{#ifexpr {{{1|X}}} | NUMBER | ID }} 341 2012-01-24T00:32:34Z Spencer Bliven 1 figure {{#expr {{{1|X}}} }} 342 2012-01-24T00:58:47Z Spencer Bliven 1 figure '''{{#expr: 1 and -1 }}''' 343 2012-01-24T00:59:06Z Spencer Bliven 1 figure '''{{#expr: 2 }}''' 344 2012-01-24T00:59:21Z Spencer Bliven 1 figure '''{{#expr: fig2 }}''' 345 2012-01-24T00:59:53Z Spencer Bliven 1 figure '''{{#iferror {{#expr: fig2 }} | error | no error }}''' 346 2012-01-24T01:01:22Z Spencer Bliven 1 figure '''{{#expr: 2 }}''' '''{{#ifexpr: | yes | no}}''' 347 2012-01-24T01:01:32Z Spencer Bliven 1 figure '''{{#expr: 2 }}''' '''{{#ifexpr: 2| yes | no}}''' 348 2012-01-24T01:01:42Z Spencer Bliven 1 figure '''{{#expr: 2 }}''' '''{{#ifexpr: foo| yes | no}}''' 349 2012-01-24T01:02:17Z Spencer Bliven 1 {{#iferror: {{#expr: 1 + X }} | error | correct }} 350 2012-01-24T01:04:27Z Spencer Bliven 1 {{#iferror: {{#expr: {{{1|fig}}} }} | error - ID | correct - number }} 351 2012-01-24T01:05:27Z Spencer Bliven 1 {{#iferror: {{#expr: {{{1|fig}}} }} | {{{1|fig}}} | fig{{{1}}} }} 352 2012-01-24T01:06:18Z Spencer Bliven 1 [[#{{#iferror: {{#expr: {{{1|fig}}} }} | {{{1|fig}}} | fig{{{1}}} }} | {{1|?}} ]] 353 2012-01-24T01:08:54Z Spencer Bliven 1 [[#fig{{{1|}}} | {{{1|?}}} ]] 355 2012-01-24T01:12:36Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if {{{2|}}} | {{{2}}} | {{{1|?}}} }}]] 356 2012-01-24T01:13:24Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if {{{2|}}} | {{{2}}} | {{{1|?}}} }} ]] 357 2012-01-24T01:13:52Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if: {{{2|}}} | yes | no}} ]] 358 2012-01-24T01:14:10Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if: {{{2|}}} | {{{2}}} | no}} ]] 362 2012-01-24T01:21:02Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if: {{{2|}}} | {{{2}}}| no}} ]] 363 2012-01-24T01:22:14Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if: {{{2|}}} | {{{2}}}| figure {{{1|?}}} }} ]]<includeonly> </noinclude> 364 2012-01-24T01:22:37Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if: {{{2|}}} | {{{2}}}| figure {{{1|?}}} }} ]]<includeonly> </includeonly> 365 2012-01-24T01:22:58Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if: {{{2|}}} | {{{2}}}| figure {{{1|?}}} }} ]]<noinclude> </noinclude> 366 2012-01-24T01:23:35Z Spencer Bliven 1 [[#fig{{{1|}}} | {{#if: {{{2|}}} | {{{2}}}| figure {{{1|?}}} }}]]<noinclude> </noinclude>